Victor Hernandez
edcdd08463
Add comment that MDNode::getFunction() is not to be used by performance-critical code (currently only used by AsmWriter)
...
llvm-svn: 93802
2010-01-18 22:55:08 +00:00
Eli Friedman
45d605c120
Make opt -O3 act more like clang -O3 etc., by making the inlining thresholds
...
match.
llvm-svn: 93798
2010-01-18 22:38:31 +00:00
Eli Friedman
0aade63ca6
Add some potentially interesting transformations to README.
...
llvm-svn: 93797
2010-01-18 22:36:59 +00:00
Bill Wendling
58d26c105b
- Add getLSDAEncoding to the PowerPC backend.
...
- Greatly improve the comments to the getLSDAEncoding method.
llvm-svn: 93796
2010-01-18 22:36:35 +00:00
Chris Lattner
39532b939f
make llvm-config more portable to windows versions of perl,
...
patch by Michael Beck!
llvm-svn: 93793
2010-01-18 22:27:43 +00:00
Chris Lattner
6cd7a81f86
my instcombine transformations to make extension elimination more
...
aggressive changed the canonical form from sext(trunc(x)) to ashr(lshr(x)),
make sure to transform a couple more things into that canonical form,
and catch a case where we missed turning zext/shl/ashr into a single sext.
llvm-svn: 93787
2010-01-18 22:19:16 +00:00
Sean Callanan
3439b1e14c
Added a newline at the end of SMLoc.h
...
llvm-svn: 93784
2010-01-18 22:16:54 +00:00
Sean Callanan
f6a09ee2ec
Changed the comment in the file header for SMLoc
...
to something more accurate.
llvm-svn: 93782
2010-01-18 22:11:34 +00:00
Eric Christopher
f599e07003
Have FastISel handle llvm.trap().
...
llvm-svn: 93781
2010-01-18 22:11:29 +00:00
Sean Callanan
aef98cfcd2
Split SMLoc out in its own header so that it can
...
be used independently of SourceMgr.
llvm-svn: 93780
2010-01-18 22:07:51 +00:00
Jim Grosbach
27e064420b
Minor cleanup for jump table printing. Need a reference, not a pointer, for
...
printing via <<. Otherwise we just print the pointer value.
llvm-svn: 93777
2010-01-18 22:01:39 +00:00
Chris Lattner
6020407d78
filecheckize this.
...
llvm-svn: 93776
2010-01-18 22:00:46 +00:00
Chris Lattner
a01771c6db
filecheckize
...
llvm-svn: 93775
2010-01-18 21:58:32 +00:00
Chris Lattner
882bcda7ca
remove a redundant test, filecheckize another.
...
llvm-svn: 93774
2010-01-18 21:55:43 +00:00
Evan Cheng
5cf9d23e4e
Canonicalize -1 - x to ~x.
...
Instcombine does this but apparently there are situations where this pattern will escape the optimizer and / or created by isel. Here is a case that's seen in JavaScriptCore:
%t1 = sub i32 0, %a
%t2 = add i32 %t1, -1
The dag combiner pattern: ((c1-A)+c2) -> (c1+c2)-A
will fold it to -1 - %a.
llvm-svn: 93773
2010-01-18 21:38:44 +00:00
Chris Lattner
b9ad4c901e
update mkpatch, patch by Garrison Venn!
...
llvm-svn: 93771
2010-01-18 21:09:05 +00:00
Victor Hernandez
afaac26fea
Make findDbgDeclare/findDbgGlobalDeclare local static functions; avoid Elts array
...
llvm-svn: 93764
2010-01-18 20:42:09 +00:00
Victor Hernandez
247ec55125
Simplify MDNode::getFunction() and assertLocalFunction() by avoiding extra Function* variable and smallptrset since function-local metadata cannot be cyclic
...
llvm-svn: 93762
2010-01-18 20:36:54 +00:00
Johnny Chen
a5f79a6b93
The most significant encoding bit of GPR:$src or GPR:$dst was over-specified in
...
the various MOV (register) instructions (16-bit Thumb), including tBRIND (the
indirect branch). Instead of '1', it should be specified as '?', because GPR
only specifies the register class, which includes both hi-and-lo registers.
llvm-svn: 93759
2010-01-18 20:15:56 +00:00
Jim Grosbach
70af2216fd
Patch by David Conrad:
...
"On ARMv6T2 this turns cttz into rbit, clz instead of the 4 instruction
sequence it is now."
llvm-svn: 93758
2010-01-18 19:58:49 +00:00
Devang Patel
2cae5754c6
While mapping llvm.dbg.declare intrinsic manually map its operand, if possible,
...
because it points to an alloca instruction through metadata.
llvm-svn: 93757
2010-01-18 19:52:14 +00:00
Chris Lattner
4104b0bccd
reject some invalid IR. We already assert and reject this from the
...
.ll parser, but PR6070 wants it in the verifier too.
llvm-svn: 93756
2010-01-18 19:50:32 +00:00
Bill Wendling
db47c10171
Add FIXME comment.
...
llvm-svn: 93755
2010-01-18 19:47:53 +00:00
Bill Wendling
5678a9711b
- Add a comment to the callback indicating that it's *extremely* not a good
...
idea, but unfortunately necessary.
- Default to using 4-bytes for the LSDA pointer encoding to agree with the
encoded value in the CIE.
llvm-svn: 93753
2010-01-18 19:36:27 +00:00
Victor Hernandez
b1b145fed9
Make printing of metadata more robust when function is not found (which is the normal situation for non function-local metadata)
...
llvm-svn: 93748
2010-01-18 19:15:57 +00:00
Daniel Dunbar
62bfea2420
Don't try to build compiler-rt if it happens to be checked out into projects/
...
llvm-svn: 93729
2010-01-18 17:52:28 +00:00
Benjamin Kramer
35bf21a0d2
Unnamed symbol index should be >= 1. This was lost during the mangler refactoring. Fixes PR6067.
...
llvm-svn: 93724
2010-01-18 14:39:20 +00:00
Benjamin Kramer
21e6f07f53
Fix refacto reported by Nicolas Geoffray.
...
llvm-svn: 93723
2010-01-18 12:40:05 +00:00
Bob Wilson
ac3735b7fb
Emit spaces after commas in Neon register lists. This is more consistent
...
with the rest of the assembly output, is easier to read, and matches the
expected output for gcc's Neon tests.
llvm-svn: 93703
2010-01-18 01:24:43 +00:00
Chris Lattner
40f9b01ab5
switch x86 zerofill emission over to use MCStreamer.
...
llvm-svn: 93702
2010-01-18 01:21:08 +00:00
Chris Lattner
d7bd67fa61
Change CurrentFnSym to be a non-const pointer since asmprinter mutates it
...
as it emits code. Switch .globl directives to use OutStreamer instead of
doing it textually (in x86)
llvm-svn: 93700
2010-01-18 00:59:24 +00:00
Chris Lattner
86287085ba
remove the MAI argument to MCExpr::print and switch overthing to use << when printing them.
...
llvm-svn: 93699
2010-01-18 00:37:40 +00:00
Chris Lattner
a1bd99bd92
unbreak x86 jump tables with my previous patch.
...
llvm-svn: 93698
2010-01-18 00:21:06 +00:00
Chris Lattner
6f360c3c91
now that MCSymbol::print doesn't use it's MAI argument, we can
...
remove it and change all the code that prints MCSymbols to use
<< instead, which is much simpler and cleaner.
llvm-svn: 93695
2010-01-17 21:43:43 +00:00
Chris Lattner
bd2eeabe74
rename NameNeedsEscaping -> NameNeedsQuoting, eliminate the check
...
for first character which is a digit, mangler would have taken care
of this already.
llvm-svn: 93694
2010-01-17 20:11:03 +00:00
Owen Anderson
d73ce407a5
Convert some of the dynamic opcode lookups into static ones.
...
llvm-svn: 93693
2010-01-17 19:33:27 +00:00
Chris Lattner
c2047ba3e4
stop the CBE from using Mangler::appendMangledName, which is a private function, it is mangling types, which don't matter how they are done.
...
llvm-svn: 93692
2010-01-17 19:32:29 +00:00
Chris Lattner
5607355614
fix uninit member, thanks to Benjamin Kramer for identifying the bug.
...
llvm-svn: 93691
2010-01-17 19:24:35 +00:00
Chris Lattner
f7c6508544
Get MCSymbol out of the mangling business, and move all the logic
...
to Mangler. Now MCSymbol just decides whether to slap quotes around
a symbol when printing it.
This also fixes some weirdness where two MCSymbols could be created
for the same symbol, if one needed to be mangled and got mangled to
the other one.
llvm-svn: 93690
2010-01-17 19:23:46 +00:00
Rafael Espindola
15c5f196c0
Really fix this. I checked that on ARM I get
...
PASS: LLVM::FrontendC/pr5406.c (3463 of 5030)
and on X86 I get
XFAIL: LLVM::FrontendC/pr5406.c (3465 of 5030
llvm-svn: 93689
2010-01-17 19:20:45 +00:00
Chris Lattner
fb103355dd
reduce this test and convert to filecheck, hopefully the linux buildbot
...
will tell me something more useful.
llvm-svn: 93688
2010-01-17 19:09:12 +00:00
Chris Lattner
ffa28b64e5
factor this code better how that the string version of getNameWithPrefix
...
takes a twine.
llvm-svn: 93687
2010-01-17 18:52:16 +00:00
Chris Lattner
57ac0be2b5
now that mangler is in libtarget, it can use MCAsmInfo instead of clients
...
having to pass various fields from it in. Simplify.
llvm-svn: 93686
2010-01-17 18:22:35 +00:00
Dan Gohman
5e3b993a86
Don't create a (empty) output file, and don't warn about bitcode output
...
to a console, when --analyze is used.
Similarly, avoid creating an empty output file when --disable-output is used.
Print a warning when the -o option appears with either --analyze or
--disable-output, to indicate that the option is being ignored.
llvm-svn: 93685
2010-01-17 17:47:24 +00:00
Benjamin Kramer
77e20e0bed
Switch some functions to take Twines, eliminate uses of StringExtras.h.
...
llvm-svn: 93680
2010-01-17 07:46:39 +00:00
Owen Anderson
50cacaff8f
Fix comment.
...
llvm-svn: 93679
2010-01-17 06:49:03 +00:00
Bob Wilson
72cf548263
The Neon "vtst" instruction takes a suffix that is the element size alone --
...
adding an "i" to the suffix, indicating that the elements are integers, is
accepted but not part of the standard syntax. This helps us pass a few more
of the Neon tests from gcc.
llvm-svn: 93677
2010-01-17 06:35:17 +00:00
Bob Wilson
b4c16ab0b3
Fix an off-by-one error that caused the chain operand to be dropped from Neon
...
vector load-lane and store-lane instructions.
llvm-svn: 93673
2010-01-17 05:58:23 +00:00
Rafael Espindola
c0764ee2e6
Looks like XFAIL has to list every unsupported arch
...
llvm-svn: 93672
2010-01-17 05:40:41 +00:00
Rafael Espindola
bd1ab3202b
Add test for pr5406
...
llvm-svn: 93671
2010-01-17 04:44:55 +00:00