Chris Lattner
46dc583ad5
add new file
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94132 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-22 01:58:44 +00:00
Chris Lattner
be343b3ca3
move some files out of the llvm-mc tool into the MCParser library so
...
other tools can link it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94131 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-22 01:58:08 +00:00
Chris Lattner
0d6eee44d0
forgot to svn add these, doh.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94130 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-22 01:55:10 +00:00
Chris Lattner
c6ef277a0b
create a new MCParser library and move some stuff into it.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94129 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-22 01:44:57 +00:00
Chris Lattner
03949c9db3
remove some confused code that used strtoull
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94128 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-22 01:17:12 +00:00
Chris Lattner
a27f64f3e3
allow registering target lexers.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94127 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-22 01:10:40 +00:00
Chris Lattner
af0d301f43
stub out a new TargetAsmLexer interface.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94125 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-22 00:58:59 +00:00
Dan Gohman
7979b72feb
Revert LoopStrengthReduce.cpp to pre-r94061 for now.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94123 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-22 00:46:49 +00:00
Ted Kremenek
3ec68f97ea
Store flags in bitfields instead of masking them into the pointer for the left child. This leads to some nice conceptually cleanups.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94121 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-22 00:28:27 +00:00
Jim Grosbach
d5d2baec26
Fix PR5694. The CMN instructions set the flags differently from CMP, so they
...
cannot be directly interchanged for comparisons against negated values.
Disable the CMN instructions for the time being.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94119 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-22 00:08:13 +00:00
Ted Kremenek
8767d32e75
Tidy up assertion syntax. No functionality change.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94117 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 23:42:57 +00:00
Victor Hernandez
edd7966809
No need to look through bitcasts for DbgInfoIntrinsic
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94114 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 23:09:12 +00:00
Victor Hernandez
e31dc355b2
DbgInfoIntrinsic no longer appear in an instruction's use list
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94113 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 23:08:36 +00:00
Victor Hernandez
a4c77622f7
No need to look through bitcasts for DbgInfoIntrinsic
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94112 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 23:07:15 +00:00
Victor Hernandez
6c146eefbf
DbgInfoIntrinsics no longer appear in an instruction's use list; so clean up looking for them in use iterations and remove OnlyUsedByDbgInfoIntrinsics()
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94111 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 23:05:53 +00:00
Dan Gohman
eca35b76ce
When inserting expressions for post-increment users which contain
...
loop-variant components, adds must be inserted after the increment.
Keep track of the increment position for this case, and insert
these adds in the correct location.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94110 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 23:01:22 +00:00
Dan Gohman
940bd3e236
Include IVUsers information in LSR's debug output.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94108 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 22:46:32 +00:00
Dan Gohman
8b0ade3eb8
Prune the search for candidate formulae if the number of register
...
operands exceeds the number of registers used in the initial
solution, as that wouldn't lead to a profitable solution anyway.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94107 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 22:42:49 +00:00
Evan Cheng
80ffc965f5
Trim unneeded includes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94105 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 21:44:43 +00:00
Dan Gohman
2f524587b6
Add a comment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94104 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 21:31:09 +00:00
Chris Lattner
839a0159c4
It turns out that this #include is needed because otherwise
...
ValueMapper.cpp ends up calling an out of line
__ZNK4llvm12PATypeHolder3getEv, which is a template and llvm-config
determines arbitrarily to use the one in libipo. This sucks, but
keeping the #include is a reasonable workaround.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94103 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 21:29:25 +00:00
Chris Lattner
7bc3bcebb0
unbreak the build, apparently without this transformutils starts depending on libipa?
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94102 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 21:20:51 +00:00
Chris Lattner
1b3ef34b75
tidy up
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94101 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 21:05:54 +00:00
Chris Lattner
d3a6d90da7
tidy up
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94100 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 21:01:47 +00:00
Chris Lattner
717ce2b8d8
remove dead .erase.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94098 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 20:43:39 +00:00
Jim Grosbach
f38a33cd0a
back this out for now. Growing Function is not good.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94097 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 20:10:22 +00:00
Chris Lattner
2116a4ee55
testcase for r94095
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94096 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 20:01:04 +00:00
Chris Lattner
26141721d5
fix a problem with a missing _, testcase pending.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94095 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 19:58:19 +00:00
Victor Hernandez
589423cd63
Don't need to include IntrinsicInst.h any more
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94092 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 19:33:59 +00:00
Victor Hernandez
f42fae1674
No need to map NULL operands of metadata
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94091 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 19:26:20 +00:00
Daniel Dunbar
e40eb09e5e
Add a simple script for getting a version tag from a svn/git-svn/git
...
repository. Feel free to add support for your favorite VCS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94077 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 16:09:59 +00:00
Benjamin Kramer
629bff692a
struct/class mismatch.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94075 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 15:40:14 +00:00
Dan Gohman
82b5a30724
Make the parser include the lower level error message in its own error
...
message, to be more informative.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94072 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 10:15:06 +00:00
Dan Gohman
5e5442c98b
Avoid printing a spurious semicolon when there is no filename.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94071 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 10:13:27 +00:00
Dan Gohman
c37e3d5d7c
When re-using an existing cast for a user, it's still necessary to call
...
rememberInstruction so that future users of that user will be inserted
in the correct position. This fixes the Darwin selfhost.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94070 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 10:08:42 +00:00
Nick Lewycky
401f3258f6
Fix a crasher trying to fold each element in a comparison between two vectors
...
if one of the vectors didn't have elements (such as undef). Fixes PR 6096.
Fix an issue in the constant folder where fcmp (<2 x %ty>, <2 x %ty>) would
have <2 x i1> type if constant folding was successful and i1 type if it wasn't.
This exposed a related issue in the bitcode reader.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94069 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 07:03:21 +00:00
Chris Lattner
1548b863ce
remove a couple of asserts that use RTTI.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94068 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 06:11:03 +00:00
Dan Gohman
fca3706478
Run the verifier after LSR, to help catch use-before-def errors before
...
they reach codegen.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94066 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 03:51:36 +00:00
Dan Gohman
a10756ee65
Re-implement the main strength-reduction portion of LoopStrengthReduction.
...
This new version is much more aggressive about doing "full" reduction in
cases where it reduces register pressure, and also more aggressive about
rewriting induction variables to count down (or up) to zero when doing so
reduces register pressure.
It currently uses fairly simplistic algorithms for finding reuse
opportunities, but it introduces a new framework allows it to combine
multiple strategies at once to form hybrid solutions, instead of doing
all full-reduction or all base+index.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94061 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 02:09:26 +00:00
Chris Lattner
ac8b4bf66b
eliminate dynamic_cast from the pass manager.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94060 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 02:07:07 +00:00
Eric Christopher
ed1a4c7eab
Add strcpy_chk -> strcpy support for "don't know" object size
...
answers. This will update as object size checking gets better information.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94059 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 01:04:38 +00:00
Evan Cheng
94da721d8c
Fix a minor issue in x86 load / store folding table. movups does an unaligned load so it doesn't require 16-byte alignment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94058 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 00:55:14 +00:00
Jim Grosbach
d0a0c382ea
Make sure that landing pad entries in the EH call site table are in the proper
...
order for SjLj style exception handling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94055 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 00:43:30 +00:00
Sean Callanan
fd0b0288e2
Moved handling of inclusion from the AsmLexer to
...
the AsmParser, breaking AsmLexer's dependence on
SourceMgr.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94054 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-21 00:19:58 +00:00
Chris Lattner
0527344853
simplify this code.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94048 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-20 23:30:28 +00:00
Sean Callanan
bf2013ee22
Changed the AsmParser to handle error messages itself
...
rather than passing them off to the AsmLexer to handle.
This means the AsmLexer no longer requires a SourceMgr
to do error handling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94047 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-20 23:19:55 +00:00
Jim Grosbach
8d77cc8c5f
SjLj EH introduces can introduce an additional edge to a landing pad and pad
...
normalization needs to take this into account.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94046 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-20 23:03:55 +00:00
Sean Callanan
10d33a4937
Promoted the reference to the SourceMgr from AsmLexer
...
into AsmParser, in preparation for making AsmLexer
independent of the SourceMgr
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94043 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-20 22:45:23 +00:00
Sean Callanan
79036e421f
Modified MCAsmLexer to return error information upward
...
rather than printing it locally, reducing its dependence
on SourceMgr.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94041 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-20 22:18:24 +00:00
Chris Lattner
73a1aa0966
eliminate FnStubInfo, using MachineModuleInfoMachO instead.
...
this makes function stub emission determinstic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94033 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-20 21:36:48 +00:00