Anders Carlsson
91baecfeb3
Back out r101911 and see if it makes the bots happy.
...
llvm-svn: 101921
2010-04-20 18:05:10 +00:00
Benjamin Kramer
92b761cf4b
Remove dead code.
...
llvm-svn: 101920
2010-04-20 18:01:57 +00:00
Daniel Dunbar
20b551a443
IRgen: Always use i8 arrays to access union bit-fields. This is ugly, but
...
matches how we currently handle structs, and this correctly handles
-fno-bitfield-type-align.
llvm-svn: 101918
2010-04-20 17:52:30 +00:00
Johnny Chen
7be315c414
For t2LDRT, t2LDRBT, t2LDRHT, t2LDRSBT, and t2LDRSHT, if Rn(Inst{19-16})=='1111',
...
transform the Opcode to the corresponding t2LDR*pci counterpart.
Ref: A8.6.86 LDRT, A8.6.65 LDRBT, A8.6.77 LDRHT, A8.6.81 LDRSBT, A8.6.85 LDRSHT
llvm-svn: 101915
2010-04-20 17:28:50 +00:00
Evan Cheng
4019d571d9
Typo.
...
llvm-svn: 101914
2010-04-20 17:27:38 +00:00
Devang Patel
db6f71b02f
Add RUN:
...
llvm-svn: 101913
2010-04-20 17:20:10 +00:00
Chris Lattner
882bdf2a8d
remove some extraneous qualifiers.
...
llvm-svn: 101912
2010-04-20 17:13:14 +00:00
Anders Carlsson
6a0227df49
Fix a bug which triggered the assertion I added yesterday. Basically, when we initialize the vtable pointer for a virtual base, and there was another path from the most derived class to another base with the same class type, we would use the wrong base.
...
llvm-svn: 101911
2010-04-20 16:22:16 +00:00
Anders Carlsson
53cebd1ea6
Move code to apply a non-virtual and virtual offset out into a separate function.
...
llvm-svn: 101909
2010-04-20 16:03:35 +00:00
Douglas Gregor
abd9e9689a
Keep proper source location information for the type in an Objective-C
...
@encode expression.
llvm-svn: 101907
2010-04-20 15:39:42 +00:00
Dan Gohman
950fe784be
Sink the CopyToExportRegsIfNeeded calls out of SelectionDAGISel
...
into SelectionDAGBuilder. This avoids a separate pass over the
instructions, and has the side effect of providing debug location
information to the copy.
llvm-svn: 101906
2010-04-20 15:03:56 +00:00
Dan Gohman
f41ad478ca
Don't send PHI nodes down to SelectionDAGBuilder of FastISel, since
...
they end up doing nothing.
llvm-svn: 101904
2010-04-20 15:00:41 +00:00
Dan Gohman
7a6b0dfbe7
Document that TargetRegisterInfo::contains does not cover virtual registers.
...
llvm-svn: 101903
2010-04-20 14:51:20 +00:00
Dan Gohman
7c845e4ea4
Sink this use_empty() check into isUsedOutsideOfDefiningBlock.
...
llvm-svn: 101902
2010-04-20 14:50:13 +00:00
Dan Gohman
7b7f0883fe
If a PHI node somehow has debug info, propogate it to the MachineInstr PHI.
...
llvm-svn: 101901
2010-04-20 14:48:02 +00:00
Dan Gohman
0f055d3f56
Don't iterate through the whole block just to find the PHI nodes.
...
llvm-svn: 101900
2010-04-20 14:46:25 +00:00
Gabor Greif
27b3d55194
use abstract accessors to CallInst
...
llvm-svn: 101899
2010-04-20 13:13:04 +00:00
Benjamin Kramer
395857705f
PR6880: Don't dereference CallsExternalNode if it's NULL.
...
llvm-svn: 101897
2010-04-20 12:16:50 +00:00
Benjamin Kramer
6a2542b629
Tip of the day: save before commit.
...
llvm-svn: 101896
2010-04-20 11:55:38 +00:00
Benjamin Kramer
25d3d782d2
Fix -Wcast-qual warnings.
...
llvm-svn: 101895
2010-04-20 11:50:39 +00:00
Benjamin Kramer
80178eea6a
Fix -Wcast-qual warning.
...
llvm-svn: 101894
2010-04-20 11:50:37 +00:00
Douglas Gregor
ffed1cb339
Introduce a limit on the depth of the template instantiation backtrace
...
we will print with each error that occurs during template
instantiation. When the backtrace is longer than that, we will print
N/2 of the innermost backtrace entries and N/2 of the outermost
backtrace entries, then skip the middle entries with a note such as:
note: suppressed 2 template instantiation contexts; use
-ftemplate-backtrace-limit=N to change the number of template
instantiation entries shown
This should eliminate some excessively long backtraces that aren't
providing any value.
llvm-svn: 101882
2010-04-20 07:18:24 +00:00
Chris Lattner
5debc33168
stop computing InstImpInputs, it is dead
...
llvm-svn: 101881
2010-04-20 06:30:25 +00:00
Chris Lattner
9dc68d31fd
DAGInstruction::ImpOperands is dead after my recent tblgen work, zap it.
...
llvm-svn: 101880
2010-04-20 06:28:43 +00:00
Chris Lattner
5100367ff3
Bill's change in r95336 broke empty aggregates embedded
...
in other types. fix this by only bumping zero-byte globals
up to a single byte if the *entire global* is zero size,
fixing PR6340.
This also fixes empty arrays etc to be handled correctly,
and only does this on subsection-via-symbols targets (aka
darwin) which is the only place where this matters.
llvm-svn: 101879
2010-04-20 06:20:21 +00:00
Zhongxing Xu
52c28fe61a
Add test cases.
...
llvm-svn: 101878
2010-04-20 05:48:57 +00:00
Chris Lattner
9cffdf1331
don't slap noalias attribute on stret result arguments.
...
This mirror's Dan's patch for llvm-gcc in r97989, and
fixes the miscompilation in PR6525. There is some contention
over whether this is the right thing to do, but it is the
conservative answer and demonstrably fixes a miscompilation.
llvm-svn: 101877
2010-04-20 05:44:43 +00:00
Zhongxing Xu
23030c9004
Replace code with a method call. No functionality change.
...
llvm-svn: 101876
2010-04-20 05:40:40 +00:00
Chris Lattner
38c1a1a247
teach cellspu how to return i8 and i16 from calls,
...
patch by Kalle Raiskila!
llvm-svn: 101875
2010-04-20 05:36:09 +00:00
Chris Lattner
66e809acc0
remove a bunch of ad-hoc code to simplify instructions from
...
loop unswitch, and use inst simplify instead. It is more
powerful and less duplication.
llvm-svn: 101874
2010-04-20 05:33:18 +00:00
Chris Lattner
c707fa9651
move some select simplifications out out instcombine into
...
inst simplify. No functionality change.
llvm-svn: 101873
2010-04-20 05:32:14 +00:00
Anders Carlsson
652758c3ec
Pass the nearest virtual base decl to InitializeVTablePointers. No functionality change right now.
...
llvm-svn: 101872
2010-04-20 05:22:15 +00:00
Chris Lattner
b596ac718e
reapply john's patch, he broke mainline again by changing the test.
...
llvm-svn: 101871
2010-04-20 05:19:10 +00:00
Chris Lattner
5814d9d9da
RewriteLoopBodyWithConditionConstant can end up rewriting the
...
condition we're unswitching on. In this case, don't try to
simplify the second copy of the loop which may be dead or not,
but is probably a constant now. This fixes PR6879
llvm-svn: 101870
2010-04-20 05:09:16 +00:00
Anders Carlsson
3d4218570a
Assert that the path from the derived to the base class in CodeGenFunction::GetAddressOfBaseClass is not ambiguous.
...
llvm-svn: 101869
2010-04-20 05:07:22 +00:00
John Thompson
359675d036
Altivec vector literal initializer count mismatch error removed.
...
llvm-svn: 101868
2010-04-20 05:01:46 +00:00
Zhongxing Xu
4d4b8d833e
Use GetState() to get the possible cleaned state.
...
llvm-svn: 101867
2010-04-20 04:53:09 +00:00
Chris Lattner
c239eb79bd
reapply 'reject forward references to functions whose type don't match'
...
now that the testsuite has been updated.
llvm-svn: 101866
2010-04-20 04:49:11 +00:00
Chris Lattner
03499d36b5
grr, lit only hates me, not the rest of the world.
...
llvm-svn: 101865
2010-04-20 04:33:06 +00:00
Chris Lattner
3da9a2a3a9
revert r101863, whcih is causing Sema/altivec-init.c to fail on a ton
...
of buildbots with:
error: 'error' diagnostics expected but not seen:
Line 9: too few elements in vector initialization (expected 8 elements, have 2)
1 warning and 1 error generated.
llvm-svn: 101864
2010-04-20 04:31:55 +00:00
John Thompson
f351b2c2b4
Altivec vector literal initializer count mismatch error removed.
...
llvm-svn: 101863
2010-04-20 03:58:33 +00:00
Zhongxing Xu
40eb21a827
Improve handling of CXXNewExpr.
...
llvm-svn: 101862
2010-04-20 03:37:34 +00:00
John McCall
0f55a035cf
Restore r101841 without modification. Also mark 'operator delete' as used for
...
actual delete expressions, not just new expressions.
llvm-svn: 101861
2010-04-20 02:18:25 +00:00
Dan Gohman
0c862a86fa
Delete a redundant return statement.
...
llvm-svn: 101860
2010-04-20 01:58:20 +00:00
John McCall
44adf26dd0
Revert r101841 and follow-up.
...
llvm-svn: 101859
2010-04-20 01:42:53 +00:00
Chris Lattner
b6410e168c
add __builtin_[r]index. Perhaps all LIBBUILTIN's should get
...
these or something?
llvm-svn: 101858
2010-04-20 01:31:15 +00:00
John McCall
21f8d1d643
Use __SIZE_TYPE__ as suggested by dgregor.
...
llvm-svn: 101857
2010-04-20 01:26:56 +00:00
Bill Wendling
467e6c2deb
The visitXOR method can return the same SDNode. If so, we don't want to delete
...
it as it's not dead.
llvm-svn: 101855
2010-04-20 01:25:01 +00:00
Chris Lattner
4025306a91
disable optimizations in this directory for MSVC9. This avoids
...
an optimizer infinite loop on the file, PR6866.
llvm-svn: 101854
2010-04-20 01:11:32 +00:00
Johnny Chen
2161e9f03b
Better error-handling for DisassembleThumb2DPModImm() with 2-reg operands where
...
d==15 is considered illegal. Return false instead of assert().
llvm-svn: 101852
2010-04-20 01:01:57 +00:00