diff options
author | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2017-06-20 23:39:25 +0200 |
---|---|---|
committer | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2017-06-21 14:22:35 +0200 |
commit | 49d56b6969d2f47f8c92060204a73cc10caa2249 (patch) | |
tree | b6b453f7f19c2a30a6127e2e47cae2a115c7d974 | |
parent | 7ef3df201b51d6df694896d7382803b55d4f44da (diff) | |
download | sparse-49d56b6969d2f47f8c92060204a73cc10caa2249.tar.gz |
cgcc: teach cgcc about arm64
This is needed to use sparse on the git tree on an arm64
machine (where a bug in the __builtin_bswapXX() expansion
was discovered).
Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
-rwxr-xr-x | cgcc | 5 |
1 files changed, 5 insertions, 0 deletions
@@ -289,6 +289,9 @@ sub add_specs { &float_types (1, 1, 36, [24,8], [53,11], [113,15]) . &define_size_t ("long unsigned int") . ' -D__SIZEOF_POINTER__=' . ($m64 ? '8' : '4')); + } elsif ($spec eq 'aarch64') { + return (' -D__aarch64__=1 -m64' . + &float_types (1, 1, 36, [24,8], [53,11], [113,15])); } elsif ($spec eq 'host_os_specs') { my $os = `uname -s`; chomp $os; @@ -308,6 +311,8 @@ sub add_specs { return &add_specs ('s390x'); } elsif ($arch =~ /^(sparc64)$/i) { return &add_specs ('sparc64'); + } elsif ($arch =~ /^(aarch64)$/i) { + return &add_specs ('aarch64'); } } else { die "$0: invalid specs: $spec\n"; |