aboutsummaryrefslogtreecommitdiff
path: root/gcc/cif-code.def
diff options
context:
space:
mode:
authorYury Gribov <y.gribov@samsung.com>2014-02-05 05:22:29 +0000
committerYury Gribov <ygribov@gcc.gnu.org>2014-02-05 05:22:29 +0000
commit25a07c7ee9e1a2e595efa48740ce5144d005e9ac (patch)
treec4458a513932ddf878811f6b9349550dfc2ba811 /gcc/cif-code.def
parent4bf2a588d4f65587e9678c8a5e068ebd92110f85 (diff)
downloadgcc-25a07c7ee9e1a2e595efa48740ce5144d005e9ac.zip
gcc-25a07c7ee9e1a2e595efa48740ce5144d005e9ac.tar.gz
gcc-25a07c7ee9e1a2e595efa48740ce5144d005e9ac.tar.bz2
re PR sanitizer/59600 (no_sanitize_address mishandled when function is inlined)
PR sanitizer/59600 gcc/ * cif-code.def (ATTRIBUTE_MISMATCH): New CIF code. * ipa-inline.c (report_inline_failed_reason): Handle mismatched sanitization attributes. (can_inline_edge_p): Likewise. (sanitize_attrs_match_for_inline_p): New function. gcc/testsuite/ * gcc.dg/asan/nosanitize-and-inline.c: : New test. From-SVN: r207497
Diffstat (limited to 'gcc/cif-code.def')
-rw-r--r--gcc/cif-code.def4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/cif-code.def b/gcc/cif-code.def
index 5591f9a..71f3e39a 100644
--- a/gcc/cif-code.def
+++ b/gcc/cif-code.def
@@ -123,3 +123,7 @@ DEFCIFCODE(OPTIMIZATION_MISMATCH, CIF_FINAL_ERROR,
/* We can't inline because the callee refers to comdat-local symbols. */
DEFCIFCODE(USES_COMDAT_LOCAL, CIF_FINAL_NORMAL,
N_("callee refers to comdat-local symbols"))
+
+/* We can't inline because of mismatched caller/callee attributes. */
+DEFCIFCODE(ATTRIBUTE_MISMATCH, CIF_FINAL_NORMAL,
+ N_("function attribute mismatch"))