aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@ppc970.osdl.org>2004-11-07 19:27:46 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-04-07 21:04:08 -0700
commit6a5db3c9e9657620aa4622c356e797b281661c8b (patch)
tree44cb14139ee6efa6c95f78a08badf208d752925f /compile-i386.c
parentPack basic blocks only after phi node operations. (diff)
downloadsparse-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.c10
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;