Chris Lattner
d4ce7a73e8
strength reduce MMI::MappedLabel to MMI::isLabelDeleted,
...
and add a FIXME about how we are eventually going to zap this
lookup table once mc world domination is complete.
llvm-svn: 98031
2010-03-09 01:51:43 +00:00
Chris Lattner
73de790f59
inline RemapLabel into its only caller and simplify.
...
llvm-svn: 98029
2010-03-09 01:29:59 +00:00
Daniel Dunbar
8e3e2688b5
MC/Mach-O: Tweak .dump() formatting.
...
llvm-svn: 98028
2010-03-09 01:12:23 +00:00
Daniel Dunbar
e3986eb967
MC/Mach-O: Don't adjust section sizes when aligning zero fill sections, just pad the address.
...
llvm-svn: 98027
2010-03-09 01:12:20 +00:00
Dale Johannesen
d79b87c260
Another place where debug info affected codegen.
...
llvm-svn: 98026
2010-03-09 01:08:11 +00:00
Chris Lattner
4494a28b3c
mcstreamerize AsmPrinter::printLabel.
...
llvm-svn: 98025
2010-03-09 01:02:30 +00:00
Jakob Stoklund Olesen
5b150ee899
Add inlining threshold to log output.
...
llvm-svn: 98024
2010-03-09 00:59:53 +00:00
Jakob Stoklund Olesen
3d0157ae7e
Disable physical register coalescing when the number of live ranges for the
...
physreg becomes ridiculously high.
std::upper_bound may be log(N), but for sufficiently large live intervals, it
becomes log(N)*cachemiss = a long long time.
This patch improves coalescer time by 4500x for a function with 20000
function calls. The generated code is different, but not significantly worse -
the allocator hints are almost as good as physreg coalescing anyway.
llvm-svn: 98023
2010-03-09 00:59:48 +00:00
Devang Patel
4995bb0450
Start using DIFile. See updated SourceLevelDebugging.html for more information.
...
This patch updates LLVMDebugVersion to 8.
Debug info descriptors encoded using LLVMDebugVersion 7 is supported.
Corresponding llvmgcc and clang FE commits are required.
llvm-svn: 98020
2010-03-09 00:44:10 +00:00
Bill Wendling
a2ed617fa9
Print blank line and clear stubs vector.
...
llvm-svn: 98019
2010-03-09 00:43:34 +00:00
Bill Wendling
a9e3eb7d2d
MC-ize the stub printing in ARM.
...
llvm-svn: 98018
2010-03-09 00:40:17 +00:00
Chris Lattner
8147c144d9
add a EmitSymbolValue convenience method to MCStreamer.
...
llvm-svn: 98017
2010-03-09 00:39:24 +00:00
Chris Lattner
db93b91db1
make InlineInfoLabels hold MCSymbol*'s, avoiding
...
recomputation of the labels.
llvm-svn: 98016
2010-03-09 00:31:02 +00:00
Chris Lattner
a583d01e79
mc'ize the last use of PrintLabelName and eliminate PrintLabelName.
...
llvm-svn: 98015
2010-03-09 00:26:09 +00:00
Chris Lattner
644850459d
eliminate an argument from PrintRelDirective, sinking
...
the one special case into EmitSectionOffset. MCize
the non-special case in EmitSectionOffset.
llvm-svn: 98014
2010-03-09 00:17:58 +00:00
Dan Gohman
cc7ed51fa3
Print the correct index in the "match failed at index" message.
...
llvm-svn: 98013
2010-03-09 00:07:36 +00:00
Chris Lattner
06f5a077de
remove the suffix form of PrintLabelName, which was only
...
used for 'flavor'.
llvm-svn: 98012
2010-03-09 00:00:57 +00:00
Chris Lattner
183e87502e
now that the debug and eh emitters use a common .set counter,
...
we can eliminate "flavor".
llvm-svn: 98011
2010-03-09 00:00:15 +00:00
Chris Lattner
99ca33d324
move .set generation out of DwarfPrinter into AsmPrinter and
...
MCize it.
llvm-svn: 98010
2010-03-08 23:58:37 +00:00
Evan Cheng
8afdea401a
Don't waste time trying to CSE labels, phis, inline asm. Definitely avoid cse implicit-def for obvious performance reason.
...
llvm-svn: 98009
2010-03-08 23:49:12 +00:00
Evan Cheng
ca86fb517c
Restrict machine cse to really trivial coalescing. Leave the heavy lifting to a real coalescer.
...
llvm-svn: 98007
2010-03-08 23:28:08 +00:00
Chris Lattner
10d571f349
simplify EmitSectionOffset to always use .set if it is
...
available, the only thing this affects is that we produce
.set in one case we didn't before, which shouldn't harm
anything. Make EmitSectionOffset call EmitDifference
instead of duplicating it.
llvm-svn: 98005
2010-03-08 23:23:25 +00:00
Chris Lattner
d8ca814af2
don't reset defaults.
...
llvm-svn: 98004
2010-03-08 23:18:21 +00:00
Chris Lattner
9dfcbeaca1
Remove a version of EmitDifference.
...
llvm-svn: 98002
2010-03-08 23:02:59 +00:00
Bob Wilson
116599fe52
Fix a crash compiling 254.gap for Thumb2. The Thumb2 add/sub with 12-bit
...
immediate instructions cannot set the condition codes, so they do not have
the extra cc_out operand. We hit an assertion during tail duplication
because the instruction being duplicated had more operands that expected.
llvm-svn: 98001
2010-03-08 22:56:15 +00:00
Evan Cheng
db47eab2a3
Re-commit 97860 with fix. getMallocAllocatedType may return null.
...
llvm-svn: 98000
2010-03-08 22:54:36 +00:00
Chris Lattner
81bf3f933d
eliminate a form of PrintLabelName.
...
llvm-svn: 97999
2010-03-08 22:52:49 +00:00
Chris Lattner
bbd8af41d3
remove another form of EmitReference.
...
llvm-svn: 97998
2010-03-08 22:50:36 +00:00
Chris Lattner
4ccfa3d315
eliminate the non-MCSymbol versions of EmitReference.
...
llvm-svn: 97997
2010-03-08 22:47:57 +00:00
Chris Lattner
2bbaab13d8
mc'ize EmitLabel.
...
llvm-svn: 97996
2010-03-08 22:44:40 +00:00
Chris Lattner
bfd38653e6
merge DIEObjectLabel and DIEDwarfLabel into DIELabel.
...
Yes, DIE you fiendish labels, die all of you.
llvm-svn: 97995
2010-03-08 22:31:46 +00:00
Devang Patel
a7387f4ecc
Introduce DIFile. This will be used to represent header files and source file(s) in debug info.
...
llvm-svn: 97994
2010-03-08 22:27:22 +00:00
Chris Lattner
cbce2df237
elimiante the DWLabel class, using MCSymbol instead. Start
...
switching some stuff over to passing around MCSymbol* instead
of stem+ID.
llvm-svn: 97993
2010-03-08 22:23:36 +00:00
Kevin Enderby
23e37f3e39
Fix the vmxon entry in the X86InstrInfo.td so it has the correct prefix bytes
...
for the encoding and is not the same as vmptrld.
llvm-svn: 97992
2010-03-08 22:17:26 +00:00
Daniel Dunbar
42f1b1b255
MC/Macho-O: Align the zerofill section itself to the maximum alignment.
...
llvm-svn: 97991
2010-03-08 22:03:42 +00:00
Devang Patel
ea239f6e0a
Derive DIType from DIScope. This simplifies getContext() where for members the context is a type. This also eliminates need of CompileUnitMaps maintained by dwarf writer.
...
llvm-svn: 97990
2010-03-08 22:02:50 +00:00
Devang Patel
21633192f3
Remove DbgNode checks in constructor. Debug descriptors are intended to be light weight wrappers.
...
llvm-svn: 97988
2010-03-08 21:32:10 +00:00
Daniel Dunbar
3292ad448b
MC/Mach-O: Fix address compution for zero fill sections.
...
llvm-svn: 97984
2010-03-08 21:10:42 +00:00
Daniel Dunbar
ea24e77d30
MC/Mach-O: Error out instead of crashing on invalid scattered relocation expressions.
...
llvm-svn: 97983
2010-03-08 21:10:39 +00:00
Daniel Dunbar
66c79cf44d
X86: Fix encoding for TEST{8,16,32}rr.
...
llvm-svn: 97982
2010-03-08 21:10:36 +00:00
Evan Cheng
cfe037000a
Add documentation on sibling call optimization. Rename tailcall2.ll test to sibcall.ll.
...
llvm-svn: 97980
2010-03-08 21:05:02 +00:00
Devang Patel
a975a7e590
isNull() is not used any more.
...
llvm-svn: 97979
2010-03-08 21:00:27 +00:00
Devang Patel
176dc29a62
Avoid using DIDescriptor.isNull().
...
This is a first step towards eliminating checks in Descriptor constructors.
llvm-svn: 97975
2010-03-08 20:52:55 +00:00
Andrew Lenharth
4f4af9d95c
Iterator traits and swap. closes PR6548 and PR6549
...
llvm-svn: 97974
2010-03-08 20:45:52 +00:00
Erick Tryzelaar
939801510b
Don't always run the ocaml kaleidoscope tutorials.
...
llvm-svn: 97973
2010-03-08 20:07:32 +00:00
John McCall
643489334d
Revert r97726 and r97728 at ddunbar's request; we want to solve this
...
some other way when it comes to be necessary.
llvm-svn: 97972
2010-03-08 20:02:05 +00:00
Erick Tryzelaar
0e12fd5fc2
Add OCaml tutorial to the examples.
...
llvm-svn: 97966
2010-03-08 19:32:27 +00:00
Erick Tryzelaar
78095fc0b5
Update the OCaml Kaleidoscope tutorial.
...
llvm-svn: 97965
2010-03-08 19:32:18 +00:00
Devang Patel
a716e313d6
Revert r97947.
...
llvm-svn: 97963
2010-03-08 19:20:38 +00:00
Chris Lattner
014fa780b4
disambiguate some types, add a fixme about some
...
inconsistent intrinsics.
llvm-svn: 97959
2010-03-08 18:59:49 +00:00