diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2008-04-02 18:00:34 +0200 |
---|---|---|
committer | Josh Triplett <josh@freedesktop.org> | 2008-04-07 05:09:57 -0700 |
commit | f93bc9bade1f2db9320ad65ffa174ff3f684849f (patch) | |
tree | 9e34b71a01ddedb3961f46681d0b9a06a40a5972 /cgcc | |
parent | Fix type mismatches with incomplete types (diff) | |
download | sparse-f93bc9bade1f2db9320ad65ffa174ff3f684849f.tar.gz sparse-f93bc9bade1f2db9320ad65ffa174ff3f684849f.tar.bz2 sparse-f93bc9bade1f2db9320ad65ffa174ff3f684849f.zip |
cgcc: handle ppc arch
I'm not sure this is exactly the right thing to do because I'm
unfamiliar with the default CFLAGS, but it seems to at least make it
mostly work on powerpc.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Diffstat (limited to 'cgcc')
-rwxr-xr-x | cgcc | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -241,6 +241,11 @@ sub add_specs { &integer_types (8, 16, 32, $m32 ? 32 : 64, 64) . &float_types (1, 1, 33, [24,8], [53,11], [113,15]) . &define_size_t ($m32 ? "unsigned int" : "long unsigned int")); + } elsif ($spec eq 'ppc') { + return (' -D__powerpc__=1 -D_BIG_ENDIAN -D_STRING_ARCH_unaligned=1' . + &integer_types (8, 16, 32, $m64 ? 64 : 32, 64) . + &float_types (1, 1, 21, [24,8], [53,11], [113,15]) . + &define_size_t ($m64 ? "long unsigned int" : "unsigned int")); } elsif ($spec eq 'host_os_specs') { my $os = `uname -s`; chomp $os; @@ -254,6 +259,8 @@ sub add_specs { return &add_specs ('sparc'); } elsif ($arch =~ /^(x86_64)$/i) { return &add_specs ('x86_64'); + } elsif ($arch =~ /^(ppc)$/i) { + return &add_specs ('ppc'); } } else { die "$0: invalid specs: $spec\n"; |