Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(3686)

Issue 5272048: [google] AddressSanitizer for gcc, first attempt.

Can't Edit
Can't Publish+Mail
Start Review
Created:
12 years, 6 months ago by kcc
Modified:
12 years, 5 months ago
Reviewers:
kcc1, Diego Novillo, davidxl
CC:
gcc-patches_gcc.gnu.org
Base URL:
svn://gcc.gnu.org/svn/gcc/branches/google/main/gcc/
Visibility:
Public.

Patch Set 1 #

Patch Set 2 : fix 32 bits #

Total comments: 73

Patch Set 3 : misc fixes #

Patch Set 4 : misc fixes #

Patch Set 5 : use tree_low_cst #

Patch Set 6 : comment fix #

Patch Set 7 : use build_addr (not fully functional yet) #

Total comments: 2

Patch Set 8 : remove unused code #

Patch Set 9 : move asan pass higher, right after pre and sink_code #

Patch Set 10 : set attribute noreturn #

Patch Set 11 : support 16-byte accesses #

Patch Set 12 : don't touch bitfields #

Patch Set 13 : extend the avoid-bit-field hack #

Total comments: 25

Patch Set 14 : style change in toplev.c #

Patch Set 15 : style and comments #

Patch Set 16 : use FOR_EACH_BB #

Total comments: 1

Patch Set 17 : correct intereation inside FOR_EACH_BB #

Patch Set 18 : 80 chars #

Patch Set 19 : add entry into ChangeLog.google-main #

Patch Set 20 : add entry to doc/invoke.texi #

Total comments: 1

Patch Set 21 : better ChangeLog #

Patch Set 22 : better ChangeLog #

Patch Set 23 : better ChangeLog #

Total comments: 2

Patch Set 24 : better ChangeLog #

Unified diffs Side-by-side diffs Delta from patch set Stats (+465 lines, -1 line) Patch
M ChangeLog.google-main View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 1 chunk +13 lines, -0 lines 0 comments Download
M Makefile.in View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 2 chunks +5 lines, -0 lines 0 comments Download
M common.opt View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +4 lines, -0 lines 0 comments Download
M doc/invoke.texi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2 chunks +7 lines, -1 line 0 comments Download
M passes.c View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +1 line, -0 lines 0 comments Download
M toplev.c View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 2 chunks +5 lines, -0 lines 0 comments Download
A tree-asan.h View 1 chunk +26 lines, -0 lines 0 comments Download
A tree-asan.c View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +403 lines, -0 lines 0 comments Download
M tree-pass.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 40
kcc1
Index: tree-asan.c =================================================================== --- tree-asan.c (revision 0) +++ tree-asan.c (revision 0) @@ -0,0 +1,512 @@ ...
12 years, 6 months ago (2011-10-14 16:13:15 UTC) #1
davidxl
fasan option also needs to be documented in doc/invoke.texi. http://codereview.appspot.com/5272048/diff/2001/tree-asan.c File tree-asan.c (right): http://codereview.appspot.com/5272048/diff/2001/tree-asan.c#newcode54 tree-asan.c:54: ...
12 years, 6 months ago (2011-10-17 22:26:55 UTC) #2
davidxl
http://codereview.appspot.com/5272048/diff/2001/tree-asan.c File tree-asan.c (right): http://codereview.appspot.com/5272048/diff/2001/tree-asan.c#newcode79 tree-asan.c:79: (All I need is to traverse *all* memory accesses ...
12 years, 6 months ago (2011-10-17 22:33:17 UTC) #3
kcc
PTAL Lots of style issues, sorry. Does gcc have anything like cpplint.py? transform_derefs is still ...
12 years, 6 months ago (2011-10-17 23:04:49 UTC) #4
davidxl
There must be a style lint for gcc -- but I have not used it ...
12 years, 6 months ago (2011-10-18 06:06:48 UTC) #5
kcc
PTAL http://codereview.appspot.com/5272048/diff/2001/tree-asan.c File tree-asan.c (right): http://codereview.appspot.com/5272048/diff/2001/tree-asan.c#newcode79 tree-asan.c:79: (All I need is to traverse *all* memory ...
12 years, 6 months ago (2011-10-18 18:40:24 UTC) #6
davidxl
http://codereview.appspot.com/5272048/diff/18001/tree-asan.c File tree-asan.c (right): http://codereview.appspot.com/5272048/diff/18001/tree-asan.c#newcode325 tree-asan.c:325: base = build_addr (t, current_function_decl); You need to create ...
12 years, 6 months ago (2011-10-18 19:28:06 UTC) #7
davidxl
http://codereview.appspot.com/5272048/diff/18001/tree-asan.c File tree-asan.c (right): http://codereview.appspot.com/5272048/diff/18001/tree-asan.c#newcode325 tree-asan.c:325: base = build_addr (t, current_function_decl); There are issues with ...
12 years, 6 months ago (2011-10-18 22:52:33 UTC) #8
kcc
On 2011/10/18 22:52:33, davidxl wrote: > http://codereview.appspot.com/5272048/diff/18001/tree-asan.c > File tree-asan.c (right): > > http://codereview.appspot.com/5272048/diff/18001/tree-asan.c#newcode325 > ...
12 years, 6 months ago (2011-10-18 22:56:40 UTC) #9
davidxl
On Tue, Oct 18, 2011 at 3:56 PM, <konstantin.s.serebryany@gmail.com> wrote: > On 2011/10/18 22:52:33, davidxl ...
12 years, 6 months ago (2011-10-18 23:07:56 UTC) #10
kcc
> yes -- so a good choice would be after PRE and PDE (pre, sink_code) ...
12 years, 6 months ago (2011-10-18 23:12:08 UTC) #11
davidxl
It will be weird to put the instrumentation pass inside loop opt, besides memory loads ...
12 years, 6 months ago (2011-10-18 23:31:36 UTC) #12
Diego Novillo
On Tue, Oct 18, 2011 at 19:31, Xinliang David Li <davidxl@google.com> wrote: > It will ...
12 years, 6 months ago (2011-10-18 23:49:43 UTC) #13
kcc1
On Tue, Oct 18, 2011 at 4:49 PM, Diego Novillo <dnovillo@google.com> wrote: > On Tue, ...
12 years, 6 months ago (2011-10-19 00:14:09 UTC) #14
kcc
I've run the current variant over cpu2006 benchmarks. The performance difference between asan-gcc and asan-llvm ...
12 years, 6 months ago (2011-10-19 17:48:17 UTC) #15
kcc
Minimized the crash to this: struct Foo { unsigned bf1:1; unsigned bf2:1; unsigned bf3:1; }; ...
12 years, 6 months ago (2011-10-19 19:02:23 UTC) #16
davidxl
On Wed, Oct 19, 2011 at 12:02 PM, <konstantin.s.serebryany@gmail.com> wrote: > Minimized the crash to ...
12 years, 6 months ago (2011-10-19 19:15:22 UTC) #17
kcc
Added code to avoid bitfields.
12 years, 6 months ago (2011-10-19 20:38:35 UTC) #18
kcc
On 2011/10/19 20:38:35, kcc wrote: > Added code to avoid bitfields. Is there anything I ...
12 years, 6 months ago (2011-10-19 21:04:50 UTC) #19
davidxl
what kind of failures? David On Wed, Oct 19, 2011 at 2:04 PM, <konstantin.s.serebryany@gmail.com> wrote: ...
12 years, 6 months ago (2011-10-19 21:51:46 UTC) #20
kcc
On 2011/10/19 21:51:46, davidxl wrote: > what kind of failures? Ah, I asked before actually ...
12 years, 6 months ago (2011-10-19 23:35:31 UTC) #21
kcc
On 2011/10/19 23:35:31, kcc wrote: > On 2011/10/19 21:51:46, davidxl wrote: > > what kind ...
12 years, 6 months ago (2011-10-19 23:52:26 UTC) #22
kcc
On 2011/10/19 23:52:26, kcc wrote: > On 2011/10/19 23:35:31, kcc wrote: > > On 2011/10/19 ...
12 years, 6 months ago (2011-10-20 00:55:53 UTC) #23
kcc
Today's data on cpu2006 (gcc -O2 vs gcc -O2 -fasan). Machine: Dell T3500 Average slowdown ...
12 years, 6 months ago (2011-10-21 17:14:19 UTC) #24
Diego Novillo
First round of comments. I think we should add this to google/main. It's in sufficiently ...
12 years, 6 months ago (2011-10-25 16:46:34 UTC) #25
kcc
http://codereview.appspot.com/5272048/diff/30001/toplev.c File toplev.c (right): http://codereview.appspot.com/5272048/diff/30001/toplev.c#newcode621 toplev.c:621: asan_finish_file(); On 2011/10/25 16:46:34, Diego Novillo wrote: > + ...
12 years, 6 months ago (2011-10-25 18:11:04 UTC) #26
kcc
http://codereview.appspot.com/5272048/diff/17016/tree-asan.c File tree-asan.c (right): http://codereview.appspot.com/5272048/diff/17016/tree-asan.c#newcode327 tree-asan.c:327: FOR_EACH_BB (bb) Ah, yea, I can use FOR_EACH_BB with ...
12 years, 6 months ago (2011-10-25 18:18:43 UTC) #27
davidxl
On Tue, Oct 25, 2011 at 9:46 AM, <dnovillo@google.com> wrote: > First round of comments. ...
12 years, 6 months ago (2011-10-25 18:26:37 UTC) #28
kcc
Diego mentioned that we can move the asan pass somewhere to the very end, just ...
12 years, 6 months ago (2011-11-01 19:11:25 UTC) #29
Diego Novillo
On 11-11-01 15:11 , konstantin.s.serebryany@gmail.com wrote: > Diego mentioned that we can move the asan ...
12 years, 6 months ago (2011-11-01 19:16:34 UTC) #30
davidxl
On Tue, Nov 1, 2011 at 12:16 PM, Diego Novillo <dnovillo@google.com> wrote: > On 11-11-01 ...
12 years, 6 months ago (2011-11-01 19:34:03 UTC) #31
Diego Novillo
On 11-11-01 15:34 , Xinliang David Li wrote: >> Right before pass_expand? In init_optimization_passes(), look ...
12 years, 6 months ago (2011-11-01 19:41:05 UTC) #32
davidxl
On Tue, Nov 1, 2011 at 12:41 PM, Diego Novillo <dnovillo@google.com> wrote: > On 11-11-01 ...
12 years, 6 months ago (2011-11-01 19:48:40 UTC) #33
kcc
So, do you have any other suggestions before the first commit?
12 years, 6 months ago (2011-11-02 00:24:16 UTC) #34
davidxl
Ok for google/main when the option is documented in doc/invoke.texi and a Changlog file is ...
12 years, 6 months ago (2011-11-02 04:17:22 UTC) #35
kcc
On 2011/11/02 04:17:22, davidxl wrote: > Ok for google/main when the option is documented in ...
12 years, 5 months ago (2011-11-02 18:12:48 UTC) #36
Diego Novillo
The invoke.texi change looks fine. The ChangeLog entry needs some work. http://codereview.appspot.com/5272048/diff/41001/ChangeLog.google-main File ChangeLog.google-main (right): ...
12 years, 5 months ago (2011-11-02 18:23:09 UTC) #37
kcc
PTAL
12 years, 5 months ago (2011-11-02 18:48:59 UTC) #38
Diego Novillo
OK for google/main with the nits below. http://codereview.appspot.com/5272048/diff/42003/ChangeLog.google-main File ChangeLog.google-main (right): http://codereview.appspot.com/5272048/diff/42003/ChangeLog.google-main#newcode1 ChangeLog.google-main:1: 2011-11-02 Kostya ...
12 years, 5 months ago (2011-11-02 18:52:53 UTC) #39
kcc
12 years, 5 months ago (2011-11-02 20:29:30 UTC) #40
Committed. 
It went as two commits because I forgot to add the new files in the fresh
checkout. Sorry. 

r180797 and r180798
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b