aboutsummaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
authorBill Seurer <seurer@linux.vnet.ibm.com>2016-05-20 15:25:04 +0000
committerBill Seurer <seurer@gcc.gnu.org>2016-05-20 15:25:04 +0000
commit92466115766cbe8b053694bc1974f5b5653f7cda (patch)
tree0880c3512cb9b6968f798f3a246b818039b58584 /ChangeLog
parent9a385c2d3d74ffed78f2ed9ad47b844d2f294105 (diff)
downloadgcc-92466115766cbe8b053694bc1974f5b5653f7cda.zip
gcc-92466115766cbe8b053694bc1974f5b5653f7cda.tar.gz
gcc-92466115766cbe8b053694bc1974f5b5653f7cda.tar.bz2
This patch adds support for the signed and unsigned int versions of the...
This patch adds support for the signed and unsigned int versions of the vec_addec altivec builtins from the Power Architecture 64-Bit ELF V2 ABI OpenPOWER ABI for Linux Supplement (16 July 2015 Version 1.1). There are many of the builtins that are missing and this is part of a series of patches to add them. There aren't instructions for the int versions of vec_addec so the output code is built from other built-ins that do have instructions which in this case is the following. vec_addec (va, vb, carryv) == vec_or (vec_addc (va, vb), vec_addc(vec_add(va, vb), vec_and (carryv, 0x1))) The new test cases are executable tests which verify that the generated code produces expected values. C macros were used so that the same test case could be used for both the signed and unsigned versions. An extra executable test case is also included to ensure that the modified support for the __int128 versions of vec_addec is not broken. The same test case could not be used for both int and __int128 because of some differences in loading and storing the vectors. Bootstrapped and tested on powerpc64le-unknown-linux-gnu and powerpc64-unknown-linux-gnu with no regressions. Is this ok for trunk? [gcc] 2016-05-20 Bill Seurer <seurer@linux.vnet.ibm.com> * config/rs6000/rs6000-builtin.def (vec_addec): Change vec_addec to a special case builtin. * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): Add support for ALTIVEC_BUILTIN_VEC_ADDEC. * config/rs6000/rs6000.c (altivec_init_builtins): Add definition for __builtin_vec_addec. [gcc/testsuite] 2016-05-20 Bill Seurer <seurer@linux.vnet.ibm.com> * gcc.target/powerpc/vec-addec.c: New test. * gcc.target/powerpc/vec-addec-int128.c: New test. From-SVN: r236515
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog9
1 files changed, 9 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 8698133..f640bb7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2016-05-20 Bill Seurer <seurer@linux.vnet.ibm.com>
+
+ * config/rs6000/rs6000-builtin.def (vec_addec): Change vec_addec to a
+ special case builtin.
+ * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): Add
+ support for ALTIVEC_BUILTIN_VEC_ADDEC.
+ * config/rs6000/rs6000.c (altivec_init_builtins): Add definition
+ for __builtin_vec_addec.
+
2016-05-16 Jakub Sejdak <jakub.sejdak@phoesys.com>
* config.guess: Import version 2016-04-02 (newest).