Lang Hames
8b2e08187a
Fix TODO and trailing whitespace.
...
llvm-svn: 150910
2012-02-19 03:09:55 +00:00
Lang Hames
b946cb5e75
Defer sanity checks on live intervals until after all have been updated. Hold (LiveInterval, LiveRange) pairs to update, rather than vregs.
...
llvm-svn: 150909
2012-02-19 03:00:30 +00:00
Craig Topper
7582570aff
Make a bunch of X86ISelLowering shuffle functions static now that they are no longer needed by isel.
...
llvm-svn: 150908
2012-02-19 02:53:47 +00:00
Jia Liu
e9bdee01e7
comment fix ARM.h
...
llvm-svn: 150904
2012-02-19 02:04:03 +00:00
Jia Liu
6bb2f0f0e4
some comment fix for X86 and ARM
...
llvm-svn: 150902
2012-02-19 02:03:36 +00:00
Craig Topper
cfbfa3dcd1
Add vmfunc instruction to X86 assembler and disassembler.
...
llvm-svn: 150899
2012-02-19 01:39:49 +00:00
Ahmed Charles
b1856af87c
Fix issue with bitwise and precedence.
...
llvm-svn: 150897
2012-02-18 22:56:41 +00:00
Talin
777c85d862
Hashing.h - utilities for hashing various data types.
...
llvm-svn: 150890
2012-02-18 21:00:49 +00:00
Rafael Espindola
6be26e6aa6
White space fixes.
...
llvm-svn: 150886
2012-02-18 19:46:02 +00:00
Rafael Espindola
64fe8ada6e
Temporarily disable this assert. Looks like it found a similar issue when
...
building bullet.
llvm-svn: 150885
2012-02-18 17:51:43 +00:00
Rafael Espindola
5154b9bedb
Don't skip debug instructions when looking for the insertion point of
...
the cast. If we do, we can end up with
inst1
--------------- < Insertion point
dbg inst
new inst
instead of the desired
inst1
new inst
--------------- < Insertion point
dbg inst
Another option would be for InsertNoopCastOfTo (or its callers) to move the
insertion point and we would end up with
inst1
dbg inst
new inst
--------------- < Insertion point
but that complicates the callers. This fixes PR12018 (and firefox's build).
llvm-svn: 150884
2012-02-18 17:22:58 +00:00
Jia Liu
b077b6085d
Emacs-tag and some comment fix for all ARM, CellSPU, Hexagon, MBlaze, MSP430, PPC, PTX, Sparc, X86, XCore.
...
llvm-svn: 150878
2012-02-18 12:03:15 +00:00
David Meyer
7499ae53ca
On Cygwin/MingW, add SharedLibDir and LLVMToolDir to the library search path, since shared libraries are placed in 'bin'. (static libraries are still in 'lib').
...
llvm-svn: 150876
2012-02-18 10:03:19 +00:00
Craig Topper
e42fa08789
Add X86InstrSVM.td that I forgot to add in r150873.
...
llvm-svn: 150874
2012-02-18 08:34:12 +00:00
Craig Topper
ecf21d8132
Add X86 assembler and disassembler support for AMD SVM instructions. Original patch by Kay Tiong Khoo. Few tweaks by me for code density and to reduce replication.
...
llvm-svn: 150873
2012-02-18 08:19:49 +00:00
Chandler Carruth
6f19135606
Trivial cleanup to group the generic 'armvN' cases with the 'arm' case,
...
etc. No functionality changed.
llvm-svn: 150867
2012-02-18 04:34:17 +00:00
Eli Friedman
be89455c98
Fix a rather nasty regression from r150690: LHS != RHS does not imply LHS->stripPointerCasts() != RHS->stripPointerCasts().
...
llvm-svn: 150863
2012-02-18 03:29:25 +00:00
Chad Rosier
617f581b49
Fix documentation.
...
llvm-svn: 150860
2012-02-18 01:38:41 +00:00
Eric Christopher
c2e76f573d
Testcase for the previous commit.
...
llvm-svn: 150852
2012-02-18 00:05:45 +00:00
Lang Hames
095e9964bd
Bring HMEditor into line with LLVM coding standards.
...
llvm-svn: 150851
2012-02-17 23:43:40 +00:00
Eric Christopher
325985565a
Ignore the lifetime intrinsics in fast-isel.
...
llvm-svn: 150848
2012-02-17 23:03:39 +00:00
Jakob Stoklund Olesen
4aa0e7c7c4
Don't print out pointer values in SUnit::dump().
...
llvm-svn: 150842
2012-02-17 21:44:51 +00:00
Matt Beaumont-Gay
a45b6e23d0
Sink variable into assert
...
llvm-svn: 150841
2012-02-17 21:40:48 +00:00
Lang Hames
27171ecf20
Add support for regmask slots to HMEditor. Also fixes a comment error.
...
llvm-svn: 150840
2012-02-17 21:29:41 +00:00
Kevin Enderby
36596f0ae8
Fix typo in comment ldopen() -> dlopen().
...
llvm-svn: 150836
2012-02-17 19:26:00 +00:00
Jakob Stoklund Olesen
c22a5531d8
Handle regmask operands in ARMInstrInfo.
...
llvm-svn: 150833
2012-02-17 19:23:15 +00:00
Kevin Enderby
ba7e6a7525
Put back the initializing the targets in the disassembler API with a comment as
...
to why this is needed. This broke the darwin's otool(1) program. This change
was made in r144385.
llvm-svn: 150832
2012-02-17 19:18:29 +00:00
Jakob Stoklund Olesen
dc42602f74
Fix ARMBaseInstrInfo::getInstrLatency for calls.
...
Calls always clobber CPSR.
llvm-svn: 150831
2012-02-17 19:07:59 +00:00
Jakob Stoklund Olesen
bde432b917
Transfer regmasks to MRI.
...
MRI keeps track of which physregs have been used. Make sure it gets
updated with all the regmask-clobbered registers.
Delete the closePhysRegsUsed() function which isn't necessary.
llvm-svn: 150830
2012-02-17 19:07:56 +00:00
Dan Gohman
71b80f9e8c
Calls and invokes with the new clang.arc.no_objc_arc_exceptions
...
metadata may still unwind, but only in ways that the ARC
optimizer doesn't need to consider. This permits more
aggressive optimization.
llvm-svn: 150829
2012-02-17 18:59:53 +00:00
Lang Hames
ed9553242f
Refactor 'handleMove' code in live intervals. Clients of LiveIntervals won't see
...
any changes.
Internally this adds a private inner class HMEditor, to LiveIntervals. HMEditor provides
an API for updating live intervals when code is moved or bundled.
llvm-svn: 150826
2012-02-17 18:44:18 +00:00
Dan Gohman
eb02ab2f74
Remove a comment about an alternative approach that wouldn't
...
actually work, at least as described. LLVM Metadata is not
intended to suppress LLVM IR rules, as it can be stripped at
any time.
llvm-svn: 150821
2012-02-17 18:33:38 +00:00
Jim Grosbach
f636a3204d
Tidy up.
...
llvm-svn: 150820
2012-02-17 17:35:10 +00:00
David Chisnall
57bacb511d
Generate the correct EH frame section types on Solaris, this time without breaking other platforms...
...
llvm-svn: 150819
2012-02-17 17:31:15 +00:00
David Chisnall
d237b9b330
Revert r150814. It turns out that there is a good reason for this after all...
...
llvm-svn: 150818
2012-02-17 16:51:02 +00:00
Jakob Stoklund Olesen
355efd71af
Revert r150288, "Allow Post-RA LICM to hoist reserved register reads."
...
This caused miscompilations on out-of-tree targets, and possibly i386 as
well.
I'll find some other way of hoisting %rip-relative loads from loops
containing calls.
llvm-svn: 150816
2012-02-17 16:40:44 +00:00
Richard Osborne
46a58bd8f2
Fix typo in comment.
...
llvm-svn: 150815
2012-02-17 16:39:47 +00:00
David Chisnall
6c7c6fe0c2
Don't lazily allocate eh_frame. We're not lazily allocating things like the LSDA, which are only used when the eh frame is used, so this lazy allocation doesn't really make sense.
...
Fix the type of eh_frame on Solaris so that Sun ld doesn't fail to combine them (thus making it impossible for the unwind library to find them and breaking exceptions).
llvm-svn: 150814
2012-02-17 16:32:07 +00:00
David Chisnall
d5d4804858
... and it's probably best to use the correct alignment, rather than just guessing that it's the same as the size.
...
llvm-svn: 150813
2012-02-17 16:30:39 +00:00
David Chisnall
86b0f069d6
It turns out that putting an 8-byte symbol in a 4-byte section makes Solaris ld sulk. GNU ld is perfectly happy with it, which is worrying for a whole other set of reasons...
...
Thanks to Anton, Duncan and Rafael for helping me track this down.
Pointy hat to Rafael for introducing the bug in the first place.
llvm-svn: 150811
2012-02-17 16:05:50 +00:00
Nick Lewycky
a37a7e5a0f
Remove question.
...
llvm-svn: 150809
2012-02-17 09:55:20 +00:00
Jia Liu
cd92ae4cf2
remove Emacs-tag form .cpp files in Mips Backend, and fix some typo.
...
llvm-svn: 150805
2012-02-17 08:55:11 +00:00
Eric Christopher
61e7e5c8c9
Typo in variable name.
...
llvm-svn: 150796
2012-02-17 07:08:46 +00:00
Craig Topper
a25b84d986
Remove the last of the old vector_shuffle patterns from X86 isel.
...
llvm-svn: 150795
2012-02-17 07:02:34 +00:00
Nick Lewycky
a5a53772d9
Add support for invariant.start inside the static constructor evaluator. This is
...
useful to represent a variable that is const in the source but can't be constant
in the IR because of a non-trivial constructor. If globalopt evaluates the
constructor, and there was an invariant.start with no matching invariant.end
possible, it will mark the global constant afterwards.
llvm-svn: 150794
2012-02-17 06:59:21 +00:00
Akira Hatanaka
e232ee7225
Do not promote i32 arguments to i64. This was causing unnecessary sign extension
...
instructions to be emitted.
llvm-svn: 150782
2012-02-17 02:20:26 +00:00
Bill Wendling
1c92c9b270
Remove redundant comment. Use a more efficient datatype.
...
llvm-svn: 150780
2012-02-17 02:12:54 +00:00
Bill Wendling
b2fd149709
Fix some grammar-os and formatting.
...
llvm-svn: 150779
2012-02-17 02:09:28 +00:00
Lang Hames
a8cd3b538d
Reverse iterator - should be incrementing rather than decrementing.
...
llvm-svn: 150778
2012-02-17 01:54:11 +00:00
Jia Liu
ecc08b8cfe
add Emacs tag and fix some comment error in file headers
...
llvm-svn: 150775
2012-02-17 01:23:50 +00:00