[Bug sanitizer/65400] tsan mis-compiles inlineable C functions

2015-03-19 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65400 --- Comment #10 from Jakub Jelinek jakub at gcc dot gnu.org --- Author: jakub Date: Thu Mar 19 07:53:38 2015 New Revision: 221508 URL: https://gcc.gnu.org/viewcvs?rev=221508root=gccview=rev Log: PR sanitizer/65400 * ipa-split.c

[Bug sanitizer/65400] tsan mis-compiles inlineable C functions

2015-03-18 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65400 --- Comment #8 from Jakub Jelinek jakub at gcc dot gnu.org --- Created attachment 35059 -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=35059action=edit gcc5-pr65400.patch Untested fix for the first issue.

[Bug sanitizer/65400] tsan mis-compiles inlineable C functions

2015-03-18 Thread bernd.edlinger at hotmail dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65400 --- Comment #9 from Bernd Edlinger bernd.edlinger at hotmail dot de --- (In reply to Jakub Jelinek from comment #8) Created attachment 35059 [details] gcc5-pr65400.patch Untested fix for the first issue. patch looks good! and a really nice

[Bug sanitizer/65400] tsan mis-compiles inlineable C functions

2015-03-16 Thread bernd.edlinger at hotmail dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65400 --- Comment #7 from Bernd Edlinger bernd.edlinger at hotmail dot de --- (In reply to Jakub Jelinek from comment #6) Both patches look wrong to me. For the first change, it is wrong to add TSAN_FUNC_EXIT (), you should never add it out of

[Bug sanitizer/65400] tsan mis-compiles inlineable C functions

2015-03-16 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65400 --- Comment #6 from Jakub Jelinek jakub at gcc dot gnu.org --- Both patches look wrong to me. For the first change, it is wrong to add TSAN_FUNC_EXIT (), you should never add it out of nothing. First of all, you might consider allowing

[Bug sanitizer/65400] tsan mis-compiles inlineable C functions

2015-03-13 Thread bernd.edlinger at hotmail dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65400 --- Comment #5 from Bernd Edlinger bernd.edlinger at hotmail dot de --- Created attachment 35033 -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=35033action=edit stripped down second test case For completeness, here is the stripped down test

[Bug sanitizer/65400] tsan mis-compiles inlineable C functions

2015-03-13 Thread bernd.edlinger at hotmail dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65400 --- Comment #3 from Bernd Edlinger bernd.edlinger at hotmail dot de --- Hmm, I tried this: --- gcc/ipa-split.c.jj2015-02-08 21:13:01.0 +0100 +++ gcc/ipa-split.c2015-03-13 11:29:08.878923384 +0100 @@ -1509,6 +1509,16 @@

[Bug sanitizer/65400] tsan mis-compiles inlineable C functions

2015-03-13 Thread bernd.edlinger at hotmail dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65400 --- Comment #4 from Bernd Edlinger bernd.edlinger at hotmail dot de --- ok, this should fix the second regression: Index: tsan.c === --- tsan.c(revision 221355) +++ tsan.c

[Bug sanitizer/65400] tsan mis-compiles inlineable C functions

2015-03-12 Thread bernd.edlinger at hotmail dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65400 --- Comment #1 from Bernd Edlinger bernd.edlinger at hotmail dot de --- I think the trouble starts at opcua_string.c.039t.fnsplit : OpcUa_String_Clear (struct OpcUa_String * a_pString) { ... bb 5: # _25 = PHI 0(2), 1(3), 0(4) if (_25 ==

[Bug sanitizer/65400] tsan mis-compiles inlineable C functions

2015-03-12 Thread bernd.edlinger at hotmail dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65400 --- Comment #2 from Bernd Edlinger bernd.edlinger at hotmail dot de --- Jakub, at that time we do not have the __tsan_func_entry calls, only the __TSAN_FUNC_EXIT thing. in opcua_string.c.038t.local-pure-const1 OpcUa_String_Clear looks like it