diff options
author | Xavier Leroy <xavierleroy@users.noreply.github.com> | 2019-09-11 15:13:12 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-09-11 15:13:12 +0200 |
commit | 7601fb5e792a5305336e5cda9794c4041d053b95 (patch) | |
tree | f0dc0acd7bb5ad6dae80e4389fb165fa93eb3cb8 /test/regression/extasm.c | |
parent | d3eba50731c23546c6e9ccb14230460fc1da592e (diff) | |
parent | c243b565ab0744086e10efcfee16768f6c3cf880 (diff) | |
download | compcert-7601fb5e792a5305336e5cda9794c4041d053b95.tar.gz compcert-7601fb5e792a5305336e5cda9794c4041d053b95.zip |
Merge pull request #313 from AbsInt/aarch64
Support target architecture AArch64 (ARMv8 in 64-bit mode)
Diffstat (limited to 'test/regression/extasm.c')
-rw-r--r-- | test/regression/extasm.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/test/regression/extasm.c b/test/regression/extasm.c index 83a07a05..297178d1 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; @@ -21,7 +23,8 @@ int clobbers(int x, int z) #if (defined(ARCH_x86) && defined(MODEL_64)) \ || (defined(ARCH_riscV) && defined(MODEL_64)) \ || (defined(ARCH_powerpc) && defined(MODEL_ppc64)) \ - || (defined(ARCH_powerpc) && defined(MODEL_e5500)) + || (defined(ARCH_powerpc) && defined(MODEL_e5500)) \ + || defined(ARCH_aarch64) #define SIXTYFOUR #else #undef SIXTYFOUR |