User Details
- User Since
- Jan 6 2017, 11:40 PM (323 w, 5 d)
Dec 13 2019
Dec 10 2019
Dec 3 2019
Is there a reason you want the API to be such that you can get the 'error string', 'allocation string', and metadata? The first two seem nice, though not especially useful without out the stack traces. The third seems like it might be exposing internals we don't want to expose and potentially lead to versioning issues. Also how does the crash reporter already knows the error type when calling these functions? I think perhaps it would make sense to have a getCrashReport() API that fills out a struct and perhaps having dumpReportInternal() only use the information from that struct to avoid duplicating work/ensuring all information we use is exposed? I may not be familiar enough with your crash handler case to understand the justification for why it is structured this way.
Oct 31 2019
Oct 29 2019
Ah, sorry. I should have included a link to a broken build instance. Here's one: http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/36121/steps/check-clang%20ubsan/logs/stdio
Fix LGTM.
Oct 28 2019
I noticed in Decl.cpp your change deleted some whitespace that belonged there. Not a big deal, just try to remember to run clang-format-diff when you're submitting for review. Thanks!
Sep 8 2019
Aug 30 2019
Aug 28 2019
Aug 27 2019
Any reason not to switch the other bots as well?
Aug 20 2019
Aug 18 2019
From the revert email http://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20190722/675580.html they use:
$ gold -v
GNU gold (GNU Binutils for Debian 2.28) 1.14
Aug 15 2019
Aug 13 2019
Aug 12 2019
Jul 26 2019
Jul 25 2019
Jul 23 2019
Jul 22 2019
Jun 29 2019
Jun 27 2019
I'm not very familiar with the compiler-rt build-side of this change, eugenis can speak to that better than I can.
Jun 24 2019
Hi gilang, out of curiosity what is your intended use of the StackSafetyAnalysis? Is it necessary to expose all of the information exposed here?
Jun 7 2019
Jun 6 2019
I tested the following change and verified that it works for the numeric example above, but don't have time to write a test and monitor for build failures so I'm going to revert this change for now. Leaving it here for whoever wants to pick it up:
--- a/libcxx/src/charconv.cpp +++ b/libcxx/src/charconv.cpp @@ -176,22 +176,39 @@ __u64toa(uint64_t value, char* buffer) const uint32_t b0 = v0 / 10000; const uint32_t c0 = v0 % 10000;
After this change landed I started getting odd failures with check-llvm with MSan or ASan like the following: http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-bootstrap-msan/builds/12853
/b/sanitizer-x86_64-linux-bootstrap-msan/build/llvm/test/ThinLTO/X86/dot-dumper-full-lto.ll:12:10: error: CHECK: expected string not found in input
; CHECK: subgraph cluster_4294967295
<stdin>:3:2: note: possible intended match here
subgraph cluster_0004294967295 {
Jun 5 2019
LGTM otherwise
Jun 4 2019
May 31 2019
May 8 2019
One thing I also just realized is that by explicitly setting TLS model to initial-exec we prevent dlopen() dynamic loading, I don't have a problem with that but just wanted to make sure @cryptoad was aware.
May 6 2019
May 3 2019
May 2 2019
Apr 30 2019
Apr 24 2019
Found some bugs, requesting changes to track that I'd like to review the fixes and tests for that behavior.
Apr 22 2019
LGTM other than nits
Apr 19 2019
I believe the short circuiting of the IsInitialised load/branch in the general case basically leads to the performance being the same. The values are so close that I'm willing to believe that it's within margin-of-error, but some minor microarchitectural feature could also be leading to the ret version being faster.
Apr 18 2019
For the branch case, I had the conditional branch outside of NextSampleCounter == 0, so that the RT-disabled would incur minimal overhead (single branch instead of two branches), e.g.
shouldSample() { if (!IsInitialised) return false; if (NextSampleCounter == 0`) ...
Apr 16 2019
Apr 12 2019
Apr 11 2019
Some thoughts after taking a quick glance at this:
- AllocationStrategy/AlignmentStrategy don’t seem useful to me as they are. Are they just for testing? Could we get rid of them by allocating full-page allocations instead in the under/overflow tests instead? They complicate the implementation and I don’t know why people would use them outside of flipping a flag to say “full right-alignment” instead of whatever reasonable alignment strategy we choose for them. Perhaps collapse both into a single bool PerfectlyRightAlign flag and just have the default alignment strategy be something we choose?
- What is the plan for adding stack trace support?
Mar 13 2019
Mar 7 2019
- Keep x86_64 doc link