- fixed implementation of various __builtin functions
authorMichael Beck <beck@ipd.info.uni-karlsruhe.de>
Wed, 24 Dec 2008 03:47:58 +0000 (03:47 +0000)
committerMichael Beck <beck@ipd.info.uni-karlsruhe.de>
Wed, 24 Dec 2008 03:47:58 +0000 (03:47 +0000)
[r24886]

ast2firm.c
parser.c

index 555a717..67cbad6 100644 (file)
@@ -1683,7 +1683,7 @@ static ir_node *process_builtin_call(const call_expression_t *call)
        }
        case T___builtin_trap: {
                ir_type *tp  = get_ir_type(function_type);
-               ir_node *irn = new_d_Builtin(dbgi, get_store(), ir_bk_prefetch, 0, NULL, tp);
+               ir_node *irn = new_d_Builtin(dbgi, get_store(), ir_bk_trap, 0, NULL, tp);
                set_store(new_Proj(irn, mode_M, pn_Builtin_M));
                return NULL;
        }
index 32055db..8e365d4 100644 (file)
--- a/parser.c
+++ b/parser.c
@@ -310,6 +310,14 @@ static void semantic_comparison(binary_expression_t *expression);
        case T___builtin_va_arg:         \
        case T___builtin_va_end:         \
        case T___builtin_va_start:       \
+       case T___builtin_return_address: \
+       case T___builtin_frame_address:  \
+       case T___builtin_ffs:            \
+       case T___builtin_clz:            \
+       case T___builtin_ctz:            \
+       case T___builtin_popcount:       \
+       case T___builtin_parity:         \
+       case T___builtin_trap:           \
        case T___func__:                 \
        case T___noop:                   \
        case T__assume:                  \