Chris Lattner
9a84d96edf
create a new MCParser library and move some stuff into it.
...
llvm-svn: 94129
2010-01-22 01:44:57 +00:00
Chris Lattner
f1ac97964f
remove some confused code that used strtoull
...
llvm-svn: 94128
2010-01-22 01:17:12 +00:00
Chris Lattner
8cd569a4b0
allow registering target lexers.
...
llvm-svn: 94127
2010-01-22 01:10:40 +00:00
Chris Lattner
2b19da4fa0
stub out a new TargetAsmLexer interface.
...
llvm-svn: 94125
2010-01-22 00:58:59 +00:00
Dan Gohman
525f7d7833
Revert LoopStrengthReduce.cpp to pre-r94061 for now.
...
llvm-svn: 94123
2010-01-22 00:46:49 +00:00
Ted Kremenek
20b78f8eef
Store flags in bitfields instead of masking them into the pointer for the left child. This leads to some nice conceptually cleanups.
...
llvm-svn: 94121
2010-01-22 00:28:27 +00:00
Jim Grosbach
231a0d01a9
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.
llvm-svn: 94119
2010-01-22 00:08:13 +00:00
Ted Kremenek
30dee16eed
Tidy up assertion syntax. No functionality change.
...
llvm-svn: 94117
2010-01-21 23:42:57 +00:00
Victor Hernandez
728ab49966
No need to look through bitcasts for DbgInfoIntrinsic
...
llvm-svn: 94114
2010-01-21 23:09:12 +00:00
Victor Hernandez
ef9e66c909
DbgInfoIntrinsic no longer appear in an instruction's use list
...
llvm-svn: 94113
2010-01-21 23:08:36 +00:00
Victor Hernandez
1cc721ee56
No need to look through bitcasts for DbgInfoIntrinsic
...
llvm-svn: 94112
2010-01-21 23:07:15 +00:00
Victor Hernandez
d44671b931
DbgInfoIntrinsics no longer appear in an instruction's use list; so clean up looking for them in use iterations and remove OnlyUsedByDbgInfoIntrinsics()
...
llvm-svn: 94111
2010-01-21 23:05:53 +00:00
Dan Gohman
23ac1f6157
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.
llvm-svn: 94110
2010-01-21 23:01:22 +00:00
Dan Gohman
2c93a3fa96
Include IVUsers information in LSR's debug output.
...
llvm-svn: 94108
2010-01-21 22:46:32 +00:00
Dan Gohman
3cce294b13
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.
llvm-svn: 94107
2010-01-21 22:42:49 +00:00
Evan Cheng
c3ad04c825
Trim unneeded includes.
...
llvm-svn: 94105
2010-01-21 21:44:43 +00:00
Dan Gohman
a4954135a7
Add a comment.
...
llvm-svn: 94104
2010-01-21 21:31:09 +00:00
Chris Lattner
642049e127
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.
llvm-svn: 94103
2010-01-21 21:29:25 +00:00
Chris Lattner
3547371b0b
unbreak the build, apparently without this transformutils starts depending on libipa?
...
llvm-svn: 94102
2010-01-21 21:20:51 +00:00
Chris Lattner
3f91babac8
tidy up
...
llvm-svn: 94101
2010-01-21 21:05:54 +00:00
Chris Lattner
7d29f831ea
tidy up
...
llvm-svn: 94100
2010-01-21 21:01:47 +00:00
Chris Lattner
1de11df17e
remove dead .erase.
...
llvm-svn: 94098
2010-01-21 20:43:39 +00:00
Jim Grosbach
57ca094a52
back this out for now. Growing Function is not good.
...
llvm-svn: 94097
2010-01-21 20:10:22 +00:00
Chris Lattner
75db03497a
testcase for r94095
...
llvm-svn: 94096
2010-01-21 20:01:04 +00:00
Chris Lattner
b9161f31bd
fix a problem with a missing _, testcase pending.
...
llvm-svn: 94095
2010-01-21 19:58:19 +00:00
Victor Hernandez
507d86fcbb
Don't need to include IntrinsicInst.h any more
...
llvm-svn: 94092
2010-01-21 19:33:59 +00:00
Victor Hernandez
3a31114cf9
No need to map NULL operands of metadata
...
llvm-svn: 94091
2010-01-21 19:26:20 +00:00
Daniel Dunbar
55d6538336
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.
llvm-svn: 94077
2010-01-21 16:09:59 +00:00
Benjamin Kramer
262bcb8d6e
struct/class mismatch.
...
llvm-svn: 94075
2010-01-21 15:40:14 +00:00
Dan Gohman
f14fd7ec69
Make the parser include the lower level error message in its own error
...
message, to be more informative.
llvm-svn: 94072
2010-01-21 10:15:06 +00:00
Dan Gohman
2d3e1be372
Avoid printing a spurious semicolon when there is no filename.
...
llvm-svn: 94071
2010-01-21 10:13:27 +00:00
Dan Gohman
7bd5379b8c
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.
llvm-svn: 94070
2010-01-21 10:08:42 +00:00
Nick Lewycky
938b8b195c
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.
llvm-svn: 94069
2010-01-21 07:03:21 +00:00
Chris Lattner
0ce1aa4aa6
remove a couple of asserts that use RTTI.
...
llvm-svn: 94068
2010-01-21 06:11:03 +00:00
Dan Gohman
45406404b1
Run the verifier after LSR, to help catch use-before-def errors before
...
they reach codegen.
llvm-svn: 94066
2010-01-21 03:51:36 +00:00
Dan Gohman
be34c35f32
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.
llvm-svn: 94061
2010-01-21 02:09:26 +00:00
Chris Lattner
309cca906a
eliminate dynamic_cast from the pass manager.
...
llvm-svn: 94060
2010-01-21 02:07:07 +00:00
Eric Christopher
939ad8be86
Add strcpy_chk -> strcpy support for "don't know" object size
...
answers. This will update as object size checking gets better information.
llvm-svn: 94059
2010-01-21 01:04:38 +00:00
Evan Cheng
6133019b90
Fix a minor issue in x86 load / store folding table. movups does an unaligned load so it doesn't require 16-byte alignment.
...
llvm-svn: 94058
2010-01-21 00:55:14 +00:00
Jim Grosbach
cf6e6e1c79
Make sure that landing pad entries in the EH call site table are in the proper
...
order for SjLj style exception handling.
llvm-svn: 94055
2010-01-21 00:43:30 +00:00
Sean Callanan
e9111e7172
Moved handling of inclusion from the AsmLexer to
...
the AsmParser, breaking AsmLexer's dependence on
SourceMgr.
llvm-svn: 94054
2010-01-21 00:19:58 +00:00
Chris Lattner
5c16b9815b
simplify this code.
...
llvm-svn: 94048
2010-01-20 23:30:28 +00:00
Sean Callanan
52633cb655
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.
llvm-svn: 94047
2010-01-20 23:19:55 +00:00
Jim Grosbach
98eae84f2e
SjLj EH introduces can introduce an additional edge to a landing pad and pad
...
normalization needs to take this into account.
llvm-svn: 94046
2010-01-20 23:03:55 +00:00
Sean Callanan
3c0fb5c7bb
Promoted the reference to the SourceMgr from AsmLexer
...
into AsmParser, in preparation for making AsmLexer
independent of the SourceMgr
llvm-svn: 94043
2010-01-20 22:45:23 +00:00
Sean Callanan
cddf628d31
Modified MCAsmLexer to return error information upward
...
rather than printing it locally, reducing its dependence
on SourceMgr.
llvm-svn: 94041
2010-01-20 22:18:24 +00:00
Chris Lattner
0c9b35b319
eliminate FnStubInfo, using MachineModuleInfoMachO instead.
...
this makes function stub emission determinstic.
llvm-svn: 94033
2010-01-20 21:36:48 +00:00
Dale Johannesen
e6672a5bda
make findDebugLoc a class method
...
llvm-svn: 94032
2010-01-20 21:36:02 +00:00
Chris Lattner
1faedfad24
split function stub printing out to its own function,
...
no functionality change.
llvm-svn: 94030
2010-01-20 21:19:44 +00:00
Chris Lattner
e170ca84e0
eliminate the GVStubs and HiddenGVStubs maps, and use
...
MachineModuleInfoMachO instead. This eliminates two sources
of nondeterministic output in the ppc backend, but function
stubs are still bad.
llvm-svn: 94029
2010-01-20 21:16:14 +00:00