diff options
author | Linus Torvalds <torvalds@ppc970.osdl.org> | 2004-11-07 19:27:46 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-07 21:04:08 -0700 |
commit | 6a5db3c9e9657620aa4622c356e797b281661c8b (patch) | |
tree | 44cb14139ee6efa6c95f78a08badf208d752925f /compile-i386.c | |
parent | Pack basic blocks only after phi node operations. (diff) | |
download | sparse-6a5db3c9e9657620aa4622c356e797b281661c8b.tar.gz sparse-6a5db3c9e9657620aa4622c356e797b281661c8b.tar.bz2 sparse-6a5db3c9e9657620aa4622c356e797b281661c8b.zip |
Remove EXPR_BITFIELD entirely.
I used to think I needed it. That's no longer the case: we just
follow the "bit_offset" in the type information.
There may be cases where we inadvertently cast the information
away, and those places will break now, but that's a bug really,
not an excuse for EXPR_BITFIELD.
Diffstat (limited to 'compile-i386.c')
-rw-r--r-- | compile-i386.c | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/compile-i386.c b/compile-i386.c index c18c4d3..c22b11e 100644 --- a/compile-i386.c +++ b/compile-i386.c @@ -2120,9 +2120,6 @@ static struct storage *x86_address_gen(struct expression *expr) struct storage *new; char s[32]; - if ((expr->type != EXPR_PREOP) || (expr->op != '*')) - return x86_expression(expr->address); - addr = x86_expression(expr->unop); if (expr->unop->type == EXPR_SYMBOL) return addr; @@ -2254,11 +2251,6 @@ static int type_is_signed(struct symbol *sym) return !(sym->ctype.modifiers & MOD_UNSIGNED); } -static struct storage *x86_bitfield_expr(struct expression *expr) -{ - return x86_access(expr); -} - static struct storage *x86_label_expr(struct expression *expr) { struct storage *new = stack_alloc(4); @@ -2354,8 +2346,6 @@ static struct storage *x86_expression(struct expression *expr) return emit_value(expr); case EXPR_STRING: return emit_string_expr(expr); - case EXPR_BITFIELD: - return x86_bitfield_expr(expr); case EXPR_INITIALIZER: x86_initializer_expr(expr, expr->ctype); return NULL; |