aboutsummaryrefslogtreecommitdiff
path: root/gcc/asan.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2012-12-13 00:05:23 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2012-12-13 00:05:23 +0100
commitbc77608b97abcc4bb3171f08a71e34ae342e9f8d (patch)
tree8c2fea9ca79fe3b04ca6ae2eeb6453359c825d09 /gcc/asan.c
parent46cda8a06cf04acf404ab1cdf365993ca3fe4d16 (diff)
downloadgcc-bc77608b97abcc4bb3171f08a71e34ae342e9f8d.zip
gcc-bc77608b97abcc4bb3171f08a71e34ae342e9f8d.tar.gz
gcc-bc77608b97abcc4bb3171f08a71e34ae342e9f8d.tar.bz2
re PR sanitizer/55508 (many test cases fail using -fsanitize=address with internal compiler error: in expand_call_tm)
PR sanitizer/55508 * builtin-attrs.def (ATTR_TMPURE_NOTHROW_LEAF_LIST, ATTR_TMPURE_NORETURN_NOTHROW_LEAF_LIST): New. * asan.c (ATTR_TMPURE_NOTHROW_LEAF_LIST, ATTR_TMPURE_NORETURN_NOTHROW_LEAF_LIST): Define. * sanitizer.def: Make __asan_report_* and __asan_handle_no_return builtins tm pure. From-SVN: r194459
Diffstat (limited to 'gcc/asan.c')
-rw-r--r--gcc/asan.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/asan.c b/gcc/asan.c
index 45b0dbd..40af45d 100644
--- a/gcc/asan.c
+++ b/gcc/asan.c
@@ -1611,8 +1611,13 @@ initialize_sanitizer_builtins (void)
#define BT_FN_VOID_VPTR_I16_INT BT_FN_VOID_VPTR_IX_INT[4]
#undef ATTR_NOTHROW_LEAF_LIST
#define ATTR_NOTHROW_LEAF_LIST ECF_NOTHROW | ECF_LEAF
+#undef ATTR_TMPURE_NOTHROW_LEAF_LIST
+#define ATTR_TMPURE_NOTHROW_LEAF_LIST ECF_TM_PURE | ATTR_NOTHROW_LEAF_LIST
#undef ATTR_NORETURN_NOTHROW_LEAF_LIST
#define ATTR_NORETURN_NOTHROW_LEAF_LIST ECF_NORETURN | ATTR_NOTHROW_LEAF_LIST
+#undef ATTR_TMPURE_NORETURN_NOTHROW_LEAF_LIST
+#define ATTR_TMPURE_NORETURN_NOTHROW_LEAF_LIST \
+ ECF_TM_PURE | ATTR_NORETURN_NOTHROW_LEAF_LIST
#undef DEF_SANITIZER_BUILTIN
#define DEF_SANITIZER_BUILTIN(ENUM, NAME, TYPE, ATTRS) \
decl = add_builtin_function ("__builtin_" NAME, TYPE, ENUM, \