| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
Patch by Kai!
llvm-svn: 164476
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
across the uses of the alloca. It's entirely possible for negative
numbers to come up here, and in some rare cases simply doing the 2's
complement arithmetic isn't the correct decision. Notably, we can't zext
the index of the GEP. The definition of GEP is that these offsets are
sign extended or truncated to the size of the pointer, and then wrapping
2's complement arithmetic used.
This patch fixes an issue that comes up with *no* input from the
buildbots or bootstrap afaict. The only place where it manifested,
disturbingly, is Clang's own regression test suite. A reduced and
targeted collection of tests are added to cope with this. Note that I've
tried to pin down the potential cases of overflow, but may have missed
some cases. I've tried to add a few cases to test this, but its hard
because LLVM has quite limited support for >64bit constructs.
llvm-svn: 164475
|
| |
|
|
| |
llvm-svn: 164474
|
| |
|
|
| |
llvm-svn: 164472
|
| |
|
|
| |
llvm-svn: 164471
|
| |
|
|
| |
llvm-svn: 164465
|
| |
|
|
| |
llvm-svn: 164459
|
| |
|
|
| |
llvm-svn: 164458
|
| |
|
|
|
|
|
|
|
| |
As before with load instructions, oddities like "asr #32", "rrx" could
be printed incorrectly.
Patch by Chris Lidbury.
llvm-svn: 164456
|
| |
|
|
|
|
|
|
|
| |
This patch fixes load/store instructions to handle less common cases
like "asr #32", "rrx" properly throughout the MC layer.
Patch by Chris Lidbury.
llvm-svn: 164455
|
| |
|
|
| |
llvm-svn: 164453
|
| |
|
|
| |
llvm-svn: 164452
|
| |
|
|
|
|
|
| |
Allow subtargets to tie SchedReadWrite types to processor specific
sequences or variants.
llvm-svn: 164451
|
| |
|
|
|
|
| |
Used by clang to print parameter indexes.
llvm-svn: 164440
|
| |
|
|
|
|
|
|
| |
This silences several analyzer warnings within LLVM, and provides a slightly
nicer crash experience when someone calls isa<>, cast<>, or dyn_cast<> with
a null pointer.
llvm-svn: 164439
|
| |
|
|
|
|
|
| |
This silences literally dozens of analyzer warnings on LLVM (since DenseMap
is such a commonly-used class).
llvm-svn: 164438
|
| |
|
|
| |
llvm-svn: 164435
|
| |
|
|
| |
llvm-svn: 164434
|
| |
|
|
|
|
| |
TargetLowering's callback functions.
llvm-svn: 164431
|
| |
|
|
| |
llvm-svn: 164430
|
| |
|
|
| |
llvm-svn: 164429
|
| |
|
|
| |
llvm-svn: 164428
|
| |
|
|
|
|
|
|
|
|
|
| |
selects with a constant condition. This resulted in the operands
remaining live through the SROA rewriter. Most of the time, this just
caused some dead allocas to persist and get zapped by later passes, but
in one case found by Joerg, it caused a crash when we tried to *promote*
the alloca despite it having this dead use. We already have the
mechanisms in place to handle this, just wire select up to them.
llvm-svn: 164427
|
| |
|
|
|
|
|
|
|
| |
whether or not we want to print out backtrace information. Useful
for libraries that don't need backtrace information on a crash.
rdar://11844710
llvm-svn: 164426
|
| |
|
|
| |
llvm-svn: 164425
|
| |
|
|
| |
llvm-svn: 164424
|
| |
|
|
| |
llvm-svn: 164420
|
| |
|
|
|
|
|
|
|
|
|
|
| |
care about it being an argument variable so that we can decide
that captured block and lambda vars that don't happen to
be arguments could be an argument pointer.
Add the object pointer for one case onto the subprogram die.
rdar://12001329
llvm-svn: 164419
|
| |
|
|
| |
llvm-svn: 164415
|
| |
|
|
| |
llvm-svn: 164414
|
| |
|
|
|
|
|
|
|
| |
because LiveStackAnalysis was not preserved by VirtRegWriter. This caused
big stack usage regression in some cases.
rdar://12340383
llvm-svn: 164408
|
| |
|
|
| |
llvm-svn: 164407
|
| |
|
|
| |
llvm-svn: 164406
|
| |
|
|
|
|
| |
rest of LangRef uses.
llvm-svn: 164402
|
| |
|
|
| |
llvm-svn: 164398
|
| |
|
|
|
|
| |
Wordsmithing by Matt Beaumont-Gay in response to r164389.
llvm-svn: 164395
|
| |
|
|
| |
llvm-svn: 164389
|
| |
|
|
|
|
|
|
|
| |
We rely on it when doing the transforms. This can happen when there is an
indirectbr in the loop.
Fixes PR13892.
llvm-svn: 164383
|
| |
|
|
|
|
|
| |
non-aligned i32 loads/stores.
rdar://12304911
llvm-svn: 164381
|
| |
|
|
|
|
|
|
| |
a value that is zext'd.
Fixes PR13250.
llvm-svn: 164377
|
| |
|
|
| |
llvm-svn: 164373
|
| |
|
|
| |
llvm-svn: 164372
|
| |
|
|
| |
llvm-svn: 164371
|
| |
|
|
|
|
| |
Attributes class. Now with fix.
llvm-svn: 164370
|
| |
|
|
|
|
|
|
|
|
|
|
| |
parsed function.
We inserted a placeholder that was never replaced because the function was
already visited. Assert that all placeholders have been resolved when tearing
down the bitcode reader.
Fixes PR13895.
llvm-svn: 164369
|
| |
|
|
|
|
| |
symbol table entry should be treated differently for relocatable and relocated files. This patch fixes symbol addresses printed by llvm-nm for executables and shared objects.
llvm-svn: 164365
|
| |
|
|
|
|
|
| |
.LBB0_1: # Linux
LBB0_1: # Darwin
llvm-svn: 164362
|
| |
|
|
|
|
| |
Quick review against the manual revealed a few obvious mistakes.
llvm-svn: 164361
|
| |
|
|
|
|
| |
- Fix PR5145 and turn on test 8-bit atomic ops
llvm-svn: 164358
|
| |
|
|
|
|
|
| |
- Rewirte most atomic instructions in templates for both better
maintenance and future extensions, such as HLE in TSX.
llvm-svn: 164357
|