Commit Graph

56303 Commits

Author SHA1 Message Date
Jim Grosbach 143f7eb4c8 back this out for now. Growing Function is not good.
llvm-svn: 94097
2010-01-21 20:10:22 +00:00
Chris Lattner 1526375827 testcase for r94095
llvm-svn: 94096
2010-01-21 20:01:04 +00:00
Chris Lattner 3785c11cd4 fix a problem with a missing _, testcase pending.
llvm-svn: 94095
2010-01-21 19:58:19 +00:00
Victor Hernandez a9ad174b49 Don't need to include IntrinsicInst.h any more
llvm-svn: 94092
2010-01-21 19:33:59 +00:00
Victor Hernandez d089f4e10b No need to map NULL operands of metadata
llvm-svn: 94091
2010-01-21 19:26:20 +00:00
Daniel Dunbar 87b8faf227 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 232085d50a struct/class mismatch.
llvm-svn: 94075
2010-01-21 15:40:14 +00:00
Dan Gohman 9b85ae26b1 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 7c6759094a Avoid printing a spurious semicolon when there is no filename.
llvm-svn: 94071
2010-01-21 10:13:27 +00:00
Dan Gohman 60a9bf414e 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 9e26c1cc0c 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 f2f73bf214 remove a couple of asserts that use RTTI.
llvm-svn: 94068
2010-01-21 06:11:03 +00:00
Dan Gohman 55a365e797 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 51ad99d2c5 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 626aba43d0 eliminate dynamic_cast from the pass manager.
llvm-svn: 94060
2010-01-21 02:07:07 +00:00
Eric Christopher fa863258d0 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 5d30f7c91c 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 e029a6a5ed 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 7a77eae2f3 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 3c5bf71353 simplify this code.
llvm-svn: 94048
2010-01-20 23:30:28 +00:00
Sean Callanan 177934e021 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 d7cf27a1d1 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 1a0eeb6e06 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 70855e42e6 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 32fb9564bc eliminate FnStubInfo, using MachineModuleInfoMachO instead.
this makes function stub emission determinstic.

llvm-svn: 94033
2010-01-20 21:36:48 +00:00
Dale Johannesen c5db599813 make findDebugLoc a class method
llvm-svn: 94032
2010-01-20 21:36:02 +00:00
Chris Lattner 2f7c279257 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 1ff4794cbb 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
Chris Lattner 1edfeb2c46 don't forget to initialize an instance variable!
llvm-svn: 94021
2010-01-20 20:48:59 +00:00
David Greene 0985160c54 When XDEBUG is enabled, check for SelectionDAG cycles at some key
points.  This will help us find future problems like the one
described in PR6019.

llvm-svn: 94019
2010-01-20 20:13:31 +00:00
Chris Lattner da363d9af8 adopt getAdjustedAnalysisPointer in a few more passes.
llvm-svn: 94018
2010-01-20 20:09:02 +00:00
Chris Lattner 3b03327c14 adopt getAdjustedAnalysisPointer in two more passes.
llvm-svn: 94017
2010-01-20 19:53:32 +00:00
Chris Lattner 397af34e6f adopt getAdjustedAnalysisPointer in BasicCallGraph.
llvm-svn: 94015
2010-01-20 19:51:46 +00:00
Chris Lattner af362f014d add some new methods to adjust this pointers. Not used yet.
llvm-svn: 94013
2010-01-20 19:26:14 +00:00
Chris Lattner 54a070b107 add a helper method.
llvm-svn: 94012
2010-01-20 19:25:45 +00:00
Chris Lattner c47ece59a8 don't send null pointers through the constantexpr codepath unneededly.
llvm-svn: 94010
2010-01-20 17:57:50 +00:00
Chris Lattner 6a7939243f reduce redundant are's.
llvm-svn: 94008
2010-01-20 17:53:51 +00:00
Jakob Stoklund Olesen 8a19d3c96c Move per-function inline threshold calculation to a method.
No functional change except the forgotten test for
InlineLimit.getNumOccurrences() == 0 in the CurrentThreshold2 calculation.

llvm-svn: 94007
2010-01-20 17:51:28 +00:00
Chris Lattner 9fc980403e use getGlobalDirective(), don't hardcode .globl. PR6093
llvm-svn: 94006
2010-01-20 17:50:30 +00:00
David Greene 35dca86659 Fix an infinite recursion problem. dbgs() should return errs() in
release mode.

llvm-svn: 94001
2010-01-20 15:27:19 +00:00
Chris Lattner 71601e8b3b eliminate some uses of AsmPrinter::EmitIntXXX
llvm-svn: 93996
2010-01-20 07:41:15 +00:00
Victor Hernandez ab62196c9d Backout r93990
llvm-svn: 93995
2010-01-20 07:37:49 +00:00
Chris Lattner db42c8d23d inline and radically simplify printDataDirective. It will eventually
go completely away.

llvm-svn: 93994
2010-01-20 07:33:29 +00:00
Chris Lattner f8dcf784a7 emit basic block labels with mcstreamer.
llvm-svn: 93993
2010-01-20 07:24:05 +00:00
Chris Lattner 4c8b1824f0 emit integer and fp zeros as (e.g.) .byte 0 instead of .space 1,
for tidiness.

llvm-svn: 93992
2010-01-20 07:19:19 +00:00
Chris Lattner 03cb2a3035 signficant cleanups to EmitGlobalConstant (including streamerization
of int initializers), change some methods to be static functions,
use raw_ostream::write_hex instead of a smallstring dance with 
APValue::toStringUnsigned(S, 16).

llvm-svn: 93991
2010-01-20 07:11:32 +00:00
Victor Hernandez 6c50c06e70 Fix/strengthen verification of llvm.dbg.declare
llvm-svn: 93990
2010-01-20 06:57:02 +00:00
Victor Hernandez f2462407ee Switch Elts from vector to SmallVector
llvm-svn: 93989
2010-01-20 06:56:16 +00:00
Chris Lattner 37020ccf48 switch ConstantFP emission to use MCStreamer, significantly
simplifying the code.

llvm-svn: 93988
2010-01-20 06:53:37 +00:00
Chris Lattner 45eeffcc2a make mcasmstreamer handle expanding 8 byte integer constants to
4-byte constants if .quad isn't supported.  Switch a bunch of
methods used by the dwarf writer to use OutStreamer.EmitIntValue.

llvm-svn: 93987
2010-01-20 06:45:39 +00:00