aboutsummaryrefslogtreecommitdiffstats
path: root/test/regression/extasm.c
diff options
context:
space:
mode:
authorCyril SIX <cyril.six@kalray.eu>2019-10-16 17:13:05 +0200
committerCyril SIX <cyril.six@kalray.eu>2019-10-16 17:13:23 +0200
commit9ee131bd329d1941eb37eb347f36a0c613a719a9 (patch)
tree25760a2f9e796a0f3436463852bb819c288f0a50 /test/regression/extasm.c
parent72378d9371bc5da342266bcf14231ab568e0f919 (diff)
parente1725209b2b4401adc63ce5238fa5db7c134609c (diff)
downloadcompcert-kvx-9ee131bd329d1941eb37eb347f36a0c613a719a9.tar.gz
compcert-kvx-9ee131bd329d1941eb37eb347f36a0c613a719a9.zip
[regression to check!] Merge tag 'v3.6' into mppa-work
Conflicts: .gitignore backend/Lineartyping.v common/Values.v configure cparser/Machine.ml cparser/Machine.mli driver/Configuration.ml driver/Frontend.ml runtime/Makefile test/c/Makefile test/c/aes.c test/compression/Makefile test/regression/Makefile test/regression/extasm.c test/regression/floats-basics.c test/regression/floats.c Note : test/regression should be checked, didn't test it yet
Diffstat (limited to 'test/regression/extasm.c')
-rw-r--r--test/regression/extasm.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/test/regression/extasm.c b/test/regression/extasm.c
index 95628f7f..352b930b 100644
--- a/test/regression/extasm.c
+++ b/test/regression/extasm.c
@@ -5,14 +5,16 @@ int clobbers(int x, int z)
{
int y;
asm("TEST0 out:%0 in:%1" : "=r"(y) : "r"(x) : "cc"
-#if defined(__x86_64__)
+#if defined(ARCH_x86) && defined(MODEL_64)
, "rax", "rdx", "rbx"
-#elif defined(__i386__)
+#elif defined(ARCH_x86) && !defined(MODEL_64)
, "eax", "edx", "ebx"
-#elif defined(__arm__)
+#elif defined(ARCH_arm)
, "r0", "r1", "r4"
-#elif defined(__PPC__)
+#elif defined(ARCH_powerpc)
, "r0", "r3", "r4", "r31"
+#elif defined(ARCH_aarch64)
+ , "x0", "x1", "x16", "x29", "x30"
#endif
);
return y + z;
@@ -22,7 +24,8 @@ int clobbers(int x, int z)
|| (defined(ARCH_riscV) && defined(MODEL_64)) \
|| (defined(ARCH_powerpc) && defined(MODEL_ppc64)) \
|| (defined(ARCH_powerpc) && defined(MODEL_e5500)) \
- || (defined(ARCH_mppa_k1c) && defined(MODEL_64))
+ || (defined(ARCH_mppa_k1c) && defined(MODEL_64)) \
+ || defined(ARCH_aarch64)
#define SIXTYFOUR
#else
#undef SIXTYFOUR