From: Jakub Jelinek Date: Tue, 18 Mar 2014 15:05:30 +0000 (+0100) Subject: re PR sanitizer/60557 (UBSAN: ICE after ubsan_expand_null_ifn) X-Git-Tag: releases/gcc-4.9.0~406 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ead96f131d8122180311bedf896f490a048dff57;p=thirdparty%2Fgcc.git re PR sanitizer/60557 (UBSAN: ICE after ubsan_expand_null_ifn) PR sanitizer/60557 * ubsan.c (ubsan_instrument_unreachable): Call initialize_sanitizer_builtins. (ubsan_pass): Likewise. From-SVN: r208652 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6c11a5490848..0289142a0bba 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2014-03-18 Jakub Jelinek + PR sanitizer/60557 + * ubsan.c (ubsan_instrument_unreachable): Call + initialize_sanitizer_builtins. + (ubsan_pass): Likewise. + PR sanitizer/60535 * ubsan.c (ubsan_type_descriptor, ubsan_create_data): Call varpool_finalize_decl instead of rest_of_decl_compilation. diff --git a/gcc/ubsan.c b/gcc/ubsan.c index 6f110c1ca3d0..7c7a893aca64 100644 --- a/gcc/ubsan.c +++ b/gcc/ubsan.c @@ -512,6 +512,7 @@ ubsan_create_data (const char *name, location_t loc, tree ubsan_instrument_unreachable (location_t loc) { + initialize_sanitizer_builtins (); tree data = ubsan_create_data ("__ubsan_unreachable_data", loc, NULL, NULL_TREE); tree t = builtin_decl_explicit (BUILT_IN_UBSAN_HANDLE_BUILTIN_UNREACHABLE); @@ -847,6 +848,8 @@ ubsan_pass (void) basic_block bb; gimple_stmt_iterator gsi; + initialize_sanitizer_builtins (); + FOR_EACH_BB_FN (bb, cfun) { for (gsi = gsi_start_bb (bb); !gsi_end_p (gsi);)