Bill Wendling
d49591cf21
Have the X86 back-end emit the alias instead of what's being aliased. In most
...
cases, it's much nicer and more informative reading the alias.
llvm-svn: 129497
2011-04-14 01:11:51 +00:00
Bill Wendling
500b41a7a5
Add an option to not print the alias of an instruction. It defaults to "print
...
the alias".
llvm-svn: 129485
2011-04-13 23:36:21 +00:00
Owen Anderson
d98929ed6c
During post-legalization DAG combining, be careful to only create shifts where the RHS is of the legal type for the new operation.
...
llvm-svn: 129484
2011-04-13 23:22:23 +00:00
Johnny Chen
1362fdf7a6
Thumb disassembler did not handle tBRIND (indirect branch) properly.
...
rdar://problem/9280370
llvm-svn: 129480
2011-04-13 21:59:01 +00:00
Mon P Wang
4b667cd995
Vectors with different number of elements of the same element type can have
...
the same allocation size but different primitive sizes(e.g., <3xi32> and
<4xi32>). When ScalarRepl promotes them, it can't use a bit cast but
should use a shuffle vector instead.
llvm-svn: 129472
2011-04-13 21:40:02 +00:00
Johnny Chen
d4a0b55be5
Check for unallocated instruction encodings when disassembling Thumb Branch instructions (tBcc and t2Bcc).
...
rdar://problem/9280470
llvm-svn: 129471
2011-04-13 21:35:49 +00:00
Johnny Chen
dd6fc153b1
The LDR*T/STR*T (unpriviledged load/store) operations don't take SP or PC as Rt.
...
rdar://problem/9279440
llvm-svn: 129469
2011-04-13 21:04:32 +00:00
Cameron Zwarich
6b4e85338c
Fix a typo in an ARM-specific DAG combine. This fixes <rdar://problem/9278274>.
...
llvm-svn: 129468
2011-04-13 21:01:19 +00:00
Benjamin Kramer
41b2c100c4
Fix format string warning.
...
llvm-svn: 129467
2011-04-13 20:41:43 +00:00
Cameron Zwarich
ae6963bced
Fix a regression caused by r102515 where explicit alignment on globals is
...
ignored. There was a test to catch this, but it was just blindly updated in
a large change. This fixes another part of <rdar://problem/9275290>.
llvm-svn: 129466
2011-04-13 20:36:04 +00:00
Devang Patel
11eaae759b
Fix debug message.
...
llvm-svn: 129463
2011-04-13 19:47:41 +00:00
Johnny Chen
b293311a34
Check the corner cases for t2LDRSHi12 correctly and mark invalid encodings as such.
...
rdar://problem/9276651
llvm-svn: 129462
2011-04-13 19:46:05 +00:00
Devang Patel
43cbfe2ba7
Remove extra bytes that were added for gdb. We do not have good poiner to understand actual reason behind this fixme. Spot checking suggest that newer gdb does not need this.
...
llvm-svn: 129461
2011-04-13 19:41:17 +00:00
Nick Lewycky
80f6aaa390
Use positive values since the value type is unsigned. Fixes a warning on the
...
llvm-gcc-native-mingw32 builder.
llvm-svn: 129457
2011-04-13 18:46:22 +00:00
Johnny Chen
e94b35dc41
Fix a bug where for t2MOVCCi disassembly, the TIED_TO register operand was not properly handled.
...
rdar://problem/9276427
llvm-svn: 129456
2011-04-13 17:51:02 +00:00
Johnny Chen
0da4c8bfec
Forgot to add this change for http://llvm.org/viewvc/llvm-project?view=rev&revision=129387 .
...
llvm-svn: 129451
2011-04-13 16:56:08 +00:00
Junjie Gu
caffb8c04f
Fixed the revision 129449.
...
llvm-svn: 129450
2011-04-13 16:45:49 +00:00
Junjie Gu
920274b4dd
Passing unroll parameters (unroll-count, threshold, and partial unroll) via LoopUnroll class's ctor. Doing so
...
will allow multiple context with different loop unroll parameters to run. This is a minor change and no effect
on existing application.
llvm-svn: 129449
2011-04-13 16:15:29 +00:00
Jim Grosbach
6980d004ee
Load multiple object files and link them via RuntimeDyld in llvm-rtdyld.
...
Relocations between the object modules are properly resolved, as in the
following trivial example:
$ cat t.c
int foo();
int main() {
return foo();
}
$ cat foo.c
int foo() {
return 65;
}
$ clang -c t.c -fno-asynchronous-unwind-tables
$ clang -c foo.c -fno-asynchronous-unwind-tables
$ llvm-rtdyld t.o foo.o ; echo $?
loaded '_main' at: 0x10015c000
65
llvm-svn: 129448
2011-04-13 15:49:40 +00:00
Rafael Espindola
3a5e7bd46f
Add the alias analysis to the C api.
...
llvm-svn: 129447
2011-04-13 15:44:58 +00:00
Jim Grosbach
9315fecb8f
Allow user-specified program entry point for llvm-rtdyld.
...
llvm-svn: 129446
2011-04-13 15:38:30 +00:00
Jim Grosbach
222045c063
MCJIT relocation resolution.
...
llvm-svn: 129445
2011-04-13 15:28:10 +00:00
Oscar Fuentes
e188ff81dd
Export LLVM_TARGETS_WITH_JIT in LLVMConfig.cmake.in. Without this,
...
component names such as "engine" do not expand to "jit" and hence to
the native target libraries for external users.
Thanks to arrowdodger for reporting and diagnosing the problem.
llvm-svn: 129444
2011-04-13 15:25:31 +00:00
Jay Foad
c29ba4ecd6
PR9214: Convert ConstantExpr::getIndices() to return an ArrayRef, plus
...
related tweaks to ExprMapKeyType.
llvm-svn: 129443
2011-04-13 15:22:40 +00:00
Jakob Stoklund Olesen
d7db076abc
Stop using dead function.
...
llvm-svn: 129442
2011-04-13 15:00:11 +00:00
Jay Foad
5dc08f26fc
Remove some redundant llvm:: prefixes.
...
llvm-svn: 129441
2011-04-13 14:39:42 +00:00
Jay Foad
f78cb4dfa4
Fix a comment.
...
llvm-svn: 129440
2011-04-13 13:48:09 +00:00
Jay Foad
9bd6e1956b
PR9214: Convert ConstantExpr::getWithOperands() to use ArrayRef.
...
llvm-svn: 129439
2011-04-13 13:46:01 +00:00
Jay Foad
6466c4de3d
Fix typo.
...
llvm-svn: 129437
2011-04-13 13:03:56 +00:00
Jay Foad
35b9144371
Fix typo in comment.
...
llvm-svn: 129436
2011-04-13 12:50:47 +00:00
Jay Foad
b215137166
Like the coding standards say, do not use "using namespace std".
...
llvm-svn: 129435
2011-04-13 12:46:01 +00:00
Cameron Zwarich
37f1db39c4
Fix an obvious problem with an alignment computation. AsmPrinter actually does
...
the max itself, so it is not easy to write a test case for this, but I added a
test case that would fail if the code in AsmPrinter were removed.
llvm-svn: 129432
2011-04-13 09:02:43 +00:00
Cameron Zwarich
86333383eb
Fix a typo.
...
llvm-svn: 129429
2011-04-13 06:39:16 +00:00
Cameron Zwarich
3f06fb96e5
If a global variable has a specified alignment that is less than the preferred
...
alignment for its type, use the minimum of the specified alignment and the ABI
alignment. This fixes <rdar://problem/9275290>.
llvm-svn: 129428
2011-04-13 06:03:16 +00:00
Nick Lewycky
0ec72ba684
Use %ull here.
...
llvm-svn: 129423
2011-04-13 01:05:45 +00:00
Andrew Trick
916e01c917
Recommit r129383. PreRA scheduler heuristic fixes: VRegCycle, TokenFactor latency.
...
Additional fixes:
Do something reasonable for subtargets with generic
itineraries by handle node latency the same as for an empty
itinerary. Now nodes default to unit latency unless an itinerary
explicitly specifies a zero cycle stage or it is a TokenFactor chain.
Original fixes:
UnitsSharePred was a source of randomness in the scheduler: node
priority depended on the queue data structure. I rewrote the recent
VRegCycle heuristics to completely replace the old heuristic without
any randomness. To make the ndoe latency adjustments work, I also
needed to do something a little more reasonable with TokenFactor. I
gave it zero latency to its consumers and always schedule it as low as
possible.
llvm-svn: 129421
2011-04-13 00:38:32 +00:00
Bill Wendling
0984f4927e
Reapply r129401 with patch for clang.
...
llvm-svn: 129419
2011-04-13 00:36:11 +00:00
Eric Christopher
147cad907a
Temporarily revert r129408 to see if it brings the bots back.
...
llvm-svn: 129417
2011-04-13 00:20:59 +00:00
Rafael Espindola
63f8a9ad72
Be consistent about being virtual and returning void in the cfi methods.
...
Implement the ones that were missing in the asm streamer.
llvm-svn: 129413
2011-04-12 23:59:07 +00:00
Johnny Chen
5ae9980472
Add sanity check for Ld/St Dual forms of Thumb2 instructions.
...
rdar://problem/9273947
llvm-svn: 129411
2011-04-12 23:31:00 +00:00
Jakob Stoklund Olesen
b2c47a2087
Add @earlyclobber constraints to the writeback register of all ARM store instructions.
...
The ARMARM specifies these instructions as unpredictable when storing the
writeback register. This shouldn't affect code generation much since storing a
pointer to itself is quite rare.
llvm-svn: 129409
2011-04-12 23:27:48 +00:00
Eric Christopher
c72bd6024f
Fix a bug where we were counting the alias sets as completely used
...
registers for fast allocation.
Fixes rdar://9207598
llvm-svn: 129408
2011-04-12 23:23:14 +00:00
Devang Patel
9cceebfde4
I missed this new file in previous commit.
...
llvm-svn: 129407
2011-04-12 23:21:44 +00:00
Devang Patel
5f8111e1ca
Simplify. There is no need to use static variable.
...
llvm-svn: 129406
2011-04-12 23:10:47 +00:00
Devang Patel
f078958e43
Do not reuse parameter name.
...
llvm-svn: 129405
2011-04-12 23:09:06 +00:00
Dan Gohman
4b96ea3283
Fix a hole in the definition of "dependence" used by trap values. Trap
...
values are also transmitted through branches which cause side effects to
be skipped altogether.
llvm-svn: 129404
2011-04-12 23:05:59 +00:00
Bill Wendling
f6446a0961
Revert r129401 for now. Clang is using the old way of doing things.
...
llvm-svn: 129403
2011-04-12 22:59:27 +00:00
Devang Patel
f288e23b3f
This mechanical patch moves type handling into CompileUnit from DwarfDebug. In case of multiple compile unit in one object file, each compile unit is responsible for its own set of type entries anyway. This refactoring makes this obvious.
...
llvm-svn: 129402
2011-04-12 22:53:02 +00:00
Bill Wendling
f9c9d3e05b
Remove the unaligned load intrinsics in favor of using native unaligned loads.
...
Now that we have a first-class way to represent unaligned loads, the unaligned
load intrinsics are superfluous.
First part of <rdar://problem/8460511>.
llvm-svn: 129401
2011-04-12 22:46:31 +00:00
Eric Christopher
553418ccd4
Add more comments... err debug statements to the fast allocator.
...
llvm-svn: 129400
2011-04-12 22:17:44 +00:00