aboutsummaryrefslogtreecommitdiff
path: root/include/gdb/gdb-index.h
diff options
context:
space:
mode:
authorCarl Love <cel@linux.ibm.com>2024-07-22 13:40:10 -0400
committerCarl Love <cel@linux.ibm.com>2024-07-25 18:59:00 -0400
commitdafd1247b10dbf47177cb81ad267fe569baf0b97 (patch)
treeaacbc9d60ce9c15d7ed140f1d19a2b5b413595ab /include/gdb/gdb-index.h
parent9ecf36b6f1d0688af5b69815e0244ea5118900dc (diff)
downloadgcc-dafd1247b10dbf47177cb81ad267fe569baf0b97.zip
gcc-dafd1247b10dbf47177cb81ad267fe569baf0b97.tar.gz
gcc-dafd1247b10dbf47177cb81ad267fe569baf0b97.tar.bz2
rs6000, remove built-ins __builtin_vsx_set_1ti, __builtin_vsx_set_2df, __builtin_vsx_set_2di
The built-ins set a value in a vector. The same operation can be done in C-code. The assembly code generated from the C-code is as good or better than the code generated by the built-ins. With default optimization the number of assembly generated for the two methods are similar. With -O3 optimization, the assembly generated for the two approaches is identical for the 2DF and 2DI types. The assembly for the C-code version of the 1Ti requires one less assembly instruction. It also only uses one load versus two loads for the built-in. With the removal of the built-ins, there are no other uses of the set built-in attribute. The code associated with the set built-in attribute is removed. Finally, the testcase for the __builtin_vsx_set_2df is removed. The other built-ins do not have testcases. gcc/ChangeLog: * config/rs6000/rs6000-builtin.cc (get_element_number, altivec_expand_vec_set_builtin): Remove functions. (rs6000_expand_builtin): Remove the if statement to call altivec_expand_vec_set_builtin. * config/rs6000/rs6000-builtins.def (__builtin_vsx_set_1ti, __builtin_vsx_set_2df, __builtin_vsx_set_2di): Remove the built-in definitions. * config/rs6000/rs6000-gen-builtins.cc (struct attrinfo): Remove the isset variable from the structure. (parse_bif_attrs): Remove the uses of the isset variable. gcc/testsuite/ChangeLog: * gcc.target/powerpc/vsx-builtin-3.c: Remove test cases for the __builtin_vsx_set_2df built-in.
Diffstat (limited to 'include/gdb/gdb-index.h')
0 files changed, 0 insertions, 0 deletions