aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBlue Swirl <blauwirbel@gmail.com>2009-08-06 20:19:15 +0000
committerChristopher Li <sparse@chrisli.org>2009-08-01 20:30:19 -0700
commit94a27dcf4ac83ca900be9e3f78bb545290a46f79 (patch)
tree27c4da9a030f2020c52e5c43663b7ea623e3081f /expand.c
parentlinearize.h: sanitize header (diff)
downloadsparse-94a27dcf4ac83ca900be9e3f78bb545290a46f79.tar.gz
sparse-94a27dcf4ac83ca900be9e3f78bb545290a46f79.tar.bz2
sparse-94a27dcf4ac83ca900be9e3f78bb545290a46f79.zip
Add support for TImode type (__int128_t)
GCC provides a 128 bit type called internally as TImode (__int128_t)on 64 bit platforms (at least x86_64 and Sparc64). These types are used by OpenBIOS. Add support for types "long long long", __mode__(TI) and __(u)int128_t. Signed-off-by: Blue Swirl <blauwirbel@gmail.com> Signed-off-by: Christopher Li <sparse@chrisli.org>
Diffstat (limited to 'expand.c')
-rw-r--r--expand.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/expand.c b/expand.c
index 82fd62a..b965dc3 100644
--- a/expand.c
+++ b/expand.c
@@ -128,7 +128,8 @@ Float:
else
expr->fvalue = old->fvalue;
- if (!(newtype->ctype.modifiers & MOD_LONGLONG)) {
+ if (!(newtype->ctype.modifiers & MOD_LONGLONG) && \
+ !(newtype->ctype.modifiers & MOD_LONGLONGLONG)) {
if ((newtype->ctype.modifiers & MOD_LONG))
expr->fvalue = (double)expr->fvalue;
else