aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJames Greenhalgh <james.greenhalgh@arm.com>2014-11-18 09:57:13 +0000
committerJames Greenhalgh <jgreenhalgh@gcc.gnu.org>2014-11-18 09:57:13 +0000
commitacb94767e6c2667277ba12ae80e626f1edd4e717 (patch)
tree28ad8467bd3a818038d320930b6dba321bbd9be7 /gcc
parent638ba4aadf2251d3058ecc925bd1a4ea31de1f26 (diff)
downloadgcc-acb94767e6c2667277ba12ae80e626f1edd4e717.zip
gcc-acb94767e6c2667277ba12ae80e626f1edd4e717.tar.gz
gcc-acb94767e6c2667277ba12ae80e626f1edd4e717.tar.bz2
[Patch ARM Refactor Builtins 6/8] Add some tests for "poly" mangling
gcc/testsuite/ * g++.dg/abi/mangle-arm-crypto.C: New. * g++.dg/abi/mangle-neon.C (f19): New. (f20): Likewise. From-SVN: r217698
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog6
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle-arm-crypto.C16
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle-neon.C5
3 files changed, 27 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index c893096..281894e 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,5 +1,11 @@
2014-11-18 James Greenhalgh <james.greenhalgh@arm.com>
+ * g++.dg/abi/mangle-arm-crypto.C: New.
+ * g++.dg/abi/mangle-neon.C (f19): New.
+ (f20): Likewise.
+
+2014-11-18 James Greenhalgh <james.greenhalgh@arm.com>
+
* gcc.target/arm/pr51968.c (foo): Fix call to
__builtin_neon_vqmovunv8hi.
diff --git a/gcc/testsuite/g++.dg/abi/mangle-arm-crypto.C b/gcc/testsuite/g++.dg/abi/mangle-arm-crypto.C
new file mode 100644
index 0000000..aae8847
--- /dev/null
+++ b/gcc/testsuite/g++.dg/abi/mangle-arm-crypto.C
@@ -0,0 +1,16 @@
+// Test that ARM NEON types used by the Cryptograpy Extensions
+// have their names mangled correctly.
+
+// { dg-do compile }
+// { dg-require-effective-target arm_crypto_ok }
+// { dg-add-options arm_neon }
+
+#include <arm_neon.h>
+
+void f0 (poly64_t a) {}
+void f1 (poly128_t a) {}
+void f2 (poly64x2_t a) {}
+
+// { dg-final { scan-assembler "_Z2f0y:" } }
+// { dg-final { scan-assembler "_Z2f1o:" } }
+// { dg-final { scan-assembler "_Z2f2Dv2_y:" } }
diff --git a/gcc/testsuite/g++.dg/abi/mangle-neon.C b/gcc/testsuite/g++.dg/abi/mangle-neon.C
index af1fe49f..9fabf4d 100644
--- a/gcc/testsuite/g++.dg/abi/mangle-neon.C
+++ b/gcc/testsuite/g++.dg/abi/mangle-neon.C
@@ -28,6 +28,9 @@ void f17 (poly16x8_t a) {}
void f18 (int8x16_t, int8x16_t) {}
+void f19 (poly8_t a) {}
+void f20 (poly16_t a) {}
+
// { dg-final { scan-assembler "_Z2f015__simd64_int8_t:" } }
// { dg-final { scan-assembler "_Z2f116__simd64_int16_t:" } }
// { dg-final { scan-assembler "_Z2f216__simd64_int32_t:" } }
@@ -47,3 +50,5 @@ void f18 (int8x16_t, int8x16_t) {}
// { dg-final { scan-assembler "_Z3f1617__simd128_poly8_t:" } }
// { dg-final { scan-assembler "_Z3f1718__simd128_poly16_t:" } }
// { dg-final { scan-assembler "_Z3f1816__simd128_int8_tS_:" } }
+// { dg-final { scan-assembler "_Z3f19a:" } }
+// { dg-final { scan-assembler "_Z3f20s:" } }