| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
setting null data member pointers correctly. Fixes PR7139.
llvm-svn: 104387
|
| |
|
|
|
|
|
| |
be sure to merge its parameter scope with its parent's scope. Fixes
PR7184.
llvm-svn: 104386
|
| |
|
|
|
|
| |
Controlled by option -machine-cse-phys-defs.
llvm-svn: 104385
|
| |
|
|
| |
llvm-svn: 104383
|
| |
|
|
| |
llvm-svn: 104382
|
| |
|
|
| |
llvm-svn: 104381
|
| |
|
|
|
|
|
|
| |
so that it will continue to test what it was meant to test when I commit a
separate change for better support of BUILD_VECTOR and VECTOR_SHUFFLE for Neon.
Fix a DAG combiner crash exposed by this test change.
llvm-svn: 104380
|
| |
|
|
| |
llvm-svn: 104379
|
| |
|
|
|
|
| |
now done and no more patches to it will be accepted.
llvm-svn: 104378
|
| |
|
|
|
|
|
|
|
|
| |
that are aliases of the specified register.
- Rename modifiesRegister to definesRegister since it's looking a def of the
specific register or one of its super-registers. It's not looking for def of a
sub-register or alias that could change the specified register.
- Added modifiesRegister to look for defs of aliases.
llvm-svn: 104377
|
| |
|
|
|
|
| |
Fixes <rdar://problem/7987650>.
llvm-svn: 104376
|
| |
|
|
|
|
|
|
| |
expressions
within the increment code of a for loop.
llvm-svn: 104375
|
| |
|
|
|
|
|
| |
CXXBasePaths::isAmbiguous(), rather than just asserting that we have a
canonical type. Fixes PR7176.
llvm-svn: 104374
|
| |
|
|
|
|
| |
Steven Watanabe!
llvm-svn: 104373
|
| |
|
|
|
|
|
|
|
|
| |
reads or writes a register.
This takes partial redefines and undef uses into account.
Don't actually use it yet. That caused miscompiles.
llvm-svn: 104372
|
| |
|
|
| |
llvm-svn: 104371
|
| |
|
|
| |
llvm-svn: 104338
|
| |
|
|
| |
llvm-svn: 104337
|
| |
|
|
|
|
|
| |
Case where MMX is disabled wasn't handled right.
MMX->MMX bitconverts are Legal.
llvm-svn: 104336
|
| |
|
|
|
|
|
|
| |
emitted the increment expression. Fixes PR7189.
If someone knows how to write a useful test for this, I'd be grateful.
llvm-svn: 104335
|
| |
|
|
|
|
|
|
| |
ZeroFillSize parameter
If the size of the string is greater than the zero fill size, the function will attempt to write a very large string of zeros to the object file (~4GB on 32 bit platforms). This assertion will catch the scenario and crash the program before the write occurs.
llvm-svn: 104334
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
pass after isel instead of being interlaced with it, we can
trust that all the code for a function has been isel'd before
it is run.
The practical impact of this is that we can scan for machine
instr phis instead of doing a fuzzy match on the LLVM BB for
phi nodes. Doing the fuzzy match required knowing when isel
would produce an fp reg stack phi which was gross. It was
also wrong in cases where select got lowered to a branch
tree because cmovs aren't available (PR6828).
Just do the scan on machine phis which is simpler, faster
and more correct. This fixes PR6828.
llvm-svn: 104333
|
| |
|
|
| |
llvm-svn: 104332
|
| |
|
|
| |
llvm-svn: 104331
|
| |
|
|
| |
llvm-svn: 104330
|
| |
|
|
|
|
| |
eliminating the gymnastics around the ContainsFPCode var.
llvm-svn: 104328
|
| |
|
|
|
|
|
|
| |
not make copies non-POD arguments or arguments passed by reference:
just copy the pointers directly. This eliminates another source of the
dreaded memcpy-of-non-PODs. Fixes PR7188.
llvm-svn: 104327
|
| |
|
|
| |
llvm-svn: 104326
|
| |
|
|
| |
llvm-svn: 104325
|
| |
|
|
|
|
|
|
| |
register is read."
This reverts r104322. I think it was causing miscompilations.
llvm-svn: 104323
|
| |
|
|
|
|
| |
This correctly handles partial redefines and undef uses.
llvm-svn: 104322
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
definitions of the virtual register.
This happens when spilling the registers produced by REG_SEQUENCE:
%reg1047:5<def>, %reg1047:6<def>, %reg1047:7<def> = VLD3d8 %reg1033, 0, pred:14, pred:%reg0
The rewriter would spill the register multiple times, dead store elimination
tried to keep up, but ended up cutting the branch it was sitting on.
llvm-svn: 104321
|
| |
|
|
|
|
|
| |
<imp-def> operand for the full register. This ensures that the full physical
register is marked live after register allocation.
llvm-svn: 104320
|
| |
|
|
| |
llvm-svn: 104319
|
| |
|
|
|
|
|
|
|
| |
isn't ideal if we want to be able to use another object file format.
Add a createObjectStreamer() factory method so that the correct object
file streamer can be instantiated for a given target triple.
llvm-svn: 104318
|
| |
|
|
|
|
| |
differently. This will make adding ELF support easier in the long run.
llvm-svn: 104317
|
| |
|
|
| |
llvm-svn: 104316
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Factor its implementation to ease the addition of these custom edges to
traverse. With this patch we get initializer expressions, block bodies, type
source info, and function argument, result, and exception types. There are
probably still some more missed edges.
While we're here, clean up and flesh out a bunch of comments.
Patch by Zhanyong Wan; I've done a cursory review, but further review
appreciated. This is fast becoming one of the most important public APIs to the
AST.
llvm-svn: 104315
|
| |
|
|
| |
llvm-svn: 104314
|
| |
|
|
|
|
|
|
|
|
| |
'self' variable arising from uses of the 'super' keyword. Also reorganize
some code so that BlockInfo (now CGBlockInfo) can be opaque outside of
CGBlocks.cpp.
Fixes rdar://problem/8010633.
llvm-svn: 104312
|
| |
|
|
|
|
| |
not used).
llvm-svn: 104311
|
| |
|
|
|
|
|
| |
class initialization, drill down through an arbitrary number of anonymous
records.
llvm-svn: 104310
|
| |
|
|
|
|
| |
to the associated object declaration.
llvm-svn: 104309
|
| |
|
|
|
|
|
| |
tricky since there's a 3rd 64-bit type, MMX vectors.
PR 7135.
llvm-svn: 104308
|
| |
|
|
|
|
| |
point instructions (and is not using soft float).
llvm-svn: 104307
|
| |
|
|
| |
llvm-svn: 104306
|
| |
|
|
|
|
|
|
|
| |
sure that the anonymous struct/union record declaration gets
instantiated before the variable declaration, and that it and its
fields (recursively) get entries in the local instantiation map. Fixes
PR7088.
llvm-svn: 104305
|
| |
|
|
|
|
| |
-integrated-as and -no-integrated-as options.
llvm-svn: 104304
|
| |
|
|
| |
llvm-svn: 104303
|
| |
|
|
| |
llvm-svn: 104302
|