Add some more bits for EXPR_BUILTIN_ADDRESS.
authorChristoph Mallon <christoph.mallon@gmx.de>
Thu, 18 Dec 2008 07:50:38 +0000 (07:50 +0000)
committerChristoph Mallon <christoph.mallon@gmx.de>
Thu, 18 Dec 2008 07:50:38 +0000 (07:50 +0000)
[r24767]

ast2firm.c
parser.c
walk_statements.c

index 28ccd7e..ed5610b 100644 (file)
@@ -3159,6 +3159,7 @@ static ir_node *builtin_constant_to_firm(
 static ir_node *builtin_address_to_firm(
                const builtin_address_expression_t *expression)
 {
+       (void)expression;
        panic("builtin_address_expression not implemented yet");
 }
 
index 5ab8418..25dddd4 100644 (file)
--- a/parser.c
+++ b/parser.c
@@ -9394,6 +9394,7 @@ static bool expression_has_effect(const expression_t *const expr)
                case EXPR_FUNCNAME:                  return false;
                case EXPR_BUILTIN_SYMBOL:            break; /* handled in EXPR_CALL */
                case EXPR_BUILTIN_CONSTANT_P:        return false;
+               case EXPR_BUILTIN_ADDRESS:           return false;
                case EXPR_BUILTIN_PREFETCH:          return true;
                case EXPR_OFFSETOF:                  return false;
                case EXPR_VA_START:                  return true;
index 8edc790..52e6046 100644 (file)
@@ -49,6 +49,10 @@ static void walk_expression(expression_t const *const expr,
                walk_expression(expr->conditional.false_expression, callback, env);
                return;
 
+       case EXPR_BUILTIN_ADDRESS:
+               walk_expression(expr->builtin_address.value, callback, env);
+               return;
+
        case EXPR_BUILTIN_PREFETCH: {
                builtin_prefetch_expression_t const *const pf = &expr->builtin_prefetch;
                walk_expression(pf->adr, callback, env);