- User Since
- Nov 6 2012, 6:28 AM (386 w, 1 h)
Thu, Mar 26
Yeah, like i said, noinline is insufficient here, and i don't actually
think we currently have the right tool to block any such transform:
Do you think it makes sense to check for noinline before transforming the call into the argument, i.e.:
Wed, Mar 25
Tue, Mar 24
Tue, Mar 3
Feb 19 2020
Hi Florian, Eli et al.,
Oct 23 2019
Oct 21 2019
Adding more people from the original discussion.
Oct 11 2019
Aug 30 2019
Minor comment fix.
Aug 29 2019
Landed r370335, thank you!
Rebased the patch
Aug 26 2019
Aug 7 2019
Added test cases for =x, replaced grep with not
Aug 5 2019
Eli, any other comments?
Jul 30 2019
As a data point, Linus Torvalds suggested that we need a similar feature for GCC so that the "kernel C standard" mandates zero-initialization for locals: https://lkml.org/lkml/2019/7/28/206
Vitaly, what's the current status of these patches? What's your plan on submitting them?
Heads up: this patch reduces the size of the following Android kernel functions:
Test for =X somehow sneaked in - drop it.
Jul 29 2019
Addressed Eli's comments, added a test for a packed struct
Jul 26 2019
Make big_struct() test triple-specific
Fixed comments from Eli and Nick, added tests for unusual struct sizes
Jul 24 2019
Jul 16 2019
Jul 15 2019
Jul 5 2019
Jul 3 2019
Vitaly, can you please rebase the patch?
As far as I can see, you've submitted parts of it already.
(not that I can't resolve the conflicts locally, but keeping it up-to-date may save others some time)
Fixed the test
Jul 2 2019
May 8 2019
Apr 30 2019
Apr 29 2019
Apr 26 2019
Simplified the logic per Evgeniy's request.
No test changes.
Apr 25 2019
Apr 24 2019
Sorry for a bikeshedding comment, but it had always puzzled me why this is called GWP-ASan.
As I've heard, "GWP-ASan is neither GWP nor ASan", and the word GWP (https://storage.googleapis.com/pub-tools-public-publication-data/pdf/36575.pdf) doesn't even make sense outside Google.
Is it too late already to pick a less cryptic name to avoid confusing the users?
Fixed the case when an alloca was initialized twice.
Apr 17 2019
Apr 16 2019
Updated the patch, PTAL.
Added a test containing an intrinsic without a known alloca.
Handled this case by falling back to instrumenting only allocas.
Added a flag to disable llvm.lifetime.start handling.
Apr 15 2019
Ok, will do. The repro in the bug doesn't produce IR containing a select statement for me, but the idea is clear.
Apr 12 2019
Mar 4 2019
The change itself looks good.
It doesn't seem to regress kernel performance on ARM64. I haven't got to testing on x86 yet, but don't anticipate any problems either.
Mar 1 2019
Landed r355181, thank you!
Feb 28 2019
Feb 27 2019
Rebased the code, updated the tests, added FIXME.
Feb 26 2019
Landed r354861, thank you!
Feb 25 2019
Feb 21 2019
Addressed Peter's comments.
Feb 20 2019
@pcc Peter, can you please take a look?
Feb 18 2019
Did you get a chance to compare compile-time numbers? I want to make sure this doesn't regress compile time in any measurable way.
I've compared compile times for the Linux kernel with -j64 (total user time about 20 minutes). The difference is well beyond the noise.
Fixed JF's comments
Feb 15 2019
Updated the diff, PTAL