Venkatraman Govindaraju
80722d1ee4
Generate section for bss and enable weak symbols
...
llvm-svn: 80121
2009-08-26 18:24:12 +00:00
Bob Wilson
c7d92cfb15
Convert some more Neon tests to FileCheck.
...
llvm-svn: 80120
2009-08-26 18:11:50 +00:00
Dale Johannesen
ca67bcd630
Alter 79292 to produce output that actually assembles.
...
llvm-svn: 80119
2009-08-26 18:10:32 +00:00
Mike Stump
294213c735
Allow unsigned long long DenseMapInfo.
...
llvm-svn: 80118
2009-08-26 18:02:19 +00:00
Bob Wilson
5240e9de02
Remove unneeded ARM-specific DAG nodes for VLD* and VST* Neon operations.
...
The instructions can be selected directly from the intrinsics. We will need
to add some ARM-specific nodes for VLD/VST of 3 and 4 128-bit vectors, but
those are not yet implemented.
llvm-svn: 80117
2009-08-26 17:39:53 +00:00
Anton Korobeynikov
c61d5bbbe2
Add extload expansion for f128
...
llvm-svn: 80116
2009-08-26 17:39:40 +00:00
Anton Korobeynikov
b1b0af1e84
Unbreak FP128 stuff in cbe
...
llvm-svn: 80115
2009-08-26 17:39:23 +00:00
Oscar Fuentes
6bfb6249e6
Ignore -fPIC test on Windows. Suggested by Yonggang Luo.
...
llvm-svn: 80111
2009-08-26 17:05:06 +00:00
Douglas Gregor
617131b3a4
Unbreak CMake build
...
llvm-svn: 80109
2009-08-26 16:33:57 +00:00
Anton Korobeynikov
1c904039ce
Expand scalar_to_vector - we don't have any isel logic for it now
...
llvm-svn: 80107
2009-08-26 16:26:09 +00:00
Dan Gohman
69c34d4217
Add comments detailing a known bug, so that people writing other
...
backends don't use it as an example.
llvm-svn: 80105
2009-08-26 16:06:11 +00:00
Dan Gohman
cd6a67f749
-fast is now -O0. -fast-isel is no longer experimental.
...
llvm-svn: 80104
2009-08-26 15:57:57 +00:00
Dan Gohman
bd9174cad0
Move ProfileInfo::Edge's operator<< out of line. Among other benefits,
...
this eliminates the ATTRIBUTE_USED, which wasn't being used in a manner
acceptable to some GCC versions, according to the buildbots.
llvm-svn: 80103
2009-08-26 15:56:38 +00:00
Andreas Neustifter
13640d4582
Bugfix for r80100, forgot include. Sorry.
...
llvm-svn: 80101
2009-08-26 15:18:38 +00:00
Andreas Neustifter
219665e07c
Implemented comments from Daniel Dunbar.
...
(See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20090817/084958.html )
llvm-svn: 80100
2009-08-26 15:13:44 +00:00
Dan Gohman
6bd4a58365
Don't use INSERT_SUBREG to model anyext operations on x86-64, as it
...
leads to partial-register definitions. To help avoid redundant
zero-extensions, also teach the h-register matching patterns that
use movzbl to match anyext as well as zext.
llvm-svn: 80099
2009-08-26 14:59:13 +00:00
Dan Gohman
cfb6234d13
Create a ScalarEvolution-based AliasAnalysis implementation.
...
This is a simple AliasAnalysis implementation which works by making
ScalarEvolution queries. ScalarEvolution has a more complete understanding
of arithmetic than BasicAA's collection of ad-hoc checks, so it handles
some cases that BasicAA misses, for example p[i] and p[i+1] within the
same iteration of a loop.
This is currently experimental. It may be that the main use for this pass
will be to help find cases where BasicAA can be profitably extended, or
to help in the development of the overall AliasAnalysis infrastructure,
however it's also possible that it could grow up to become a directly
useful pass.
llvm-svn: 80098
2009-08-26 14:53:06 +00:00
Dan Gohman
80f768698e
Fix a missing newline, now that Value's operator<< doesn't add one of its own.
...
llvm-svn: 80096
2009-08-26 14:34:12 +00:00
Dan Gohman
8095221102
Use SetVector instead of std::set so that alias relations are tested and
...
printed in a deterministic order.
llvm-svn: 80095
2009-08-26 14:32:17 +00:00
Daniel Dunbar
8c38017009
llvm-mc/Mach-O: Add support for relocations.
...
- I haven't really tried to find the "right" way to store the fixups or apply
them, yet. This works, but isn't particularly elegant or fast.
- Still no evaluation support, so we don't actually ever not turn a fixup into
a relocation entry.
llvm-svn: 80089
2009-08-26 13:58:10 +00:00
Daniel Dunbar
45d03f2bbb
llvm-mc/Mach-O: Move symbol indices into the MCSymbolData structure.
...
llvm-svn: 80088
2009-08-26 13:57:54 +00:00
Daniel Dunbar
43ca129960
llvm-mc/Mach-O: Dump relocations and section data (optionally) in my Mach-O dumper.
...
llvm-svn: 80087
2009-08-26 13:57:44 +00:00
Daniel Dunbar
f7a22e19cf
llvm-mc: Add symbol entries for undefined symbols used in .fill and .org.
...
llvm-svn: 80086
2009-08-26 13:57:37 +00:00
Anton Korobeynikov
6ee3a73ba1
Add dummy inline asm handling for 'r' constraint. This fixes PR4778
...
llvm-svn: 80085
2009-08-26 13:44:29 +00:00
Andreas Neustifter
1bf2c0e46f
Moved isDeclaration() check further down to allow for function counts for
...
declarations if necessary.
llvm-svn: 80084
2009-08-26 13:33:09 +00:00
Daniel Dunbar
168f849552
llvm-mc: Change MCContext value table to take const MCSymbol*s.
...
llvm-svn: 80079
2009-08-26 09:16:57 +00:00
Daniel Dunbar
e1f51a4fed
llvm-mc: Make MCValue take const MCSymbol*s.
...
llvm-svn: 80078
2009-08-26 09:16:46 +00:00
Daniel Dunbar
a56aa7f5d6
llvm-mc: Make non-sensical max bytes to .align an error.
...
Also, warn about overflow in alignment values.
llvm-svn: 80077
2009-08-26 09:16:34 +00:00
Andreas Neustifter
c6a1a9ffec
Changed std::cout to outs(), retaining formating.
...
llvm-svn: 80076
2009-08-26 09:05:21 +00:00
Devang Patel
10c075a316
Revert 79977. It causes llvm-gcc bootstrap failures on some platforms.
...
llvm-svn: 80073
2009-08-26 05:01:18 +00:00
Chris Lattner
7e0ab348a7
some mips and some sparc compilers apparently
...
predefine mips and sparc respectively. Just overrule them :)
llvm-svn: 80072
2009-08-26 05:00:16 +00:00
Venkatraman Govindaraju
cacfed5271
test commit
...
llvm-svn: 80070
2009-08-26 04:50:17 +00:00
Daniel Dunbar
bcea5b0d3e
llvm-mc: Fix tests for python variations in int printing, sigh.
...
llvm-svn: 80069
2009-08-26 04:28:45 +00:00
Chris Lattner
52948143d2
fix some funky indentation
...
llvm-svn: 80068
2009-08-26 04:21:30 +00:00
Daniel Dunbar
982f304aac
llvm-mc/Mach-O: Add section padding where needed (to align the next section).
...
Also, simplify some of Mach-O writer code which can now use section addresses.
llvm-svn: 80067
2009-08-26 04:13:32 +00:00
Daniel Dunbar
a36793b5b5
llvm-mc/Mach-O: Set addresses for symbols.
...
llvm-svn: 80065
2009-08-26 02:48:04 +00:00
Dale Johannesen
f90fc6544b
Add an 'inline hint' attribute to represent source
...
code hints that it would be a good idea to inline
a function ("inline" keyword). No functional change
yet; FEs do not emit this and inliner does not use it.
llvm-svn: 80063
2009-08-26 01:08:21 +00:00
Devang Patel
7bee319f4a
Add isClosure() predicate. This is used to add DW_AT_APPLE_block attribute.
...
Patch by Caroline Tice.
llvm-svn: 80061
2009-08-26 00:39:50 +00:00
Daniel Dunbar
6bb1f76970
llvm-mc: Improve indirect symbol support (add the indirect index table).
...
llvm-svn: 80059
2009-08-26 00:18:21 +00:00
Dan Gohman
1c96cf0732
Remove unused variables.
...
llvm-svn: 80058
2009-08-26 00:13:22 +00:00
Daniel Dunbar
3cac1b74dc
llvm-mc: Add MCSection::isDefined()
...
llvm-svn: 80057
2009-08-26 00:10:55 +00:00
Dan Gohman
1497a679f2
Fix the InsertAtEnd form of ShuffleVectorInst constructor to use
...
the correct type.
llvm-svn: 80050
2009-08-25 23:27:45 +00:00
Dan Gohman
4d20610e6e
Eliminate the unused Context argument on one of the ICmpInst and FCmpInst
...
constructors.
llvm-svn: 80049
2009-08-25 23:17:54 +00:00
Gabor Greif
c243e77bde
revert r78628 and r78803 as these are not needed any more
...
llvm-svn: 80048
2009-08-25 23:02:21 +00:00
Scott Michel
d9d9c7ef05
Updated i128 sext support for CellSPU backend, contributed by Ken Werner (IBM)
...
llvm-svn: 80042
2009-08-25 22:37:34 +00:00
Dan Gohman
6f3742a16a
Use covariant return types for Instruction::clone, and eliminate
...
the forms of ExtractElementInst and InsertElementInst that are
equivalent to clone.
llvm-svn: 80041
2009-08-25 22:29:08 +00:00
Owen Anderson
3b65ce66e8
Get rid of this horrible "benign race" by exploiting ManagedStatic to initialize
...
the array on its first access.
llvm-svn: 80040
2009-08-25 22:27:22 +00:00
Dan Gohman
c13cb35d32
This should use isIndenticalToWhenDefined.
...
llvm-svn: 80039
2009-08-25 22:24:20 +00:00
Dan Gohman
cce6c79d6d
Rename Instruction::isIdenticalTo to Instruction::isIdenticalToWhenDefined,
...
and introduce a new Instruction::isIdenticalTo which tests for full
identity, including the SubclassOptionalData flags. Also, fix the
Instruction::clone implementations to preserve the SubclassOptionalData
flags. Finally, teach several optimizations how to handle
SubclassOptionalData correctly, given these changes.
This fixes the counterintuitive behavior of isIdenticalTo not comparing
the full value, and clone not returning an identical clone, as well as
some subtle bugs that could be caused by these.
Thanks to Nick Lewycky for reporting this, and for an initial patch!
llvm-svn: 80038
2009-08-25 22:11:20 +00:00
Bill Wendling
a6284af6bb
Revert last patch. We need to put this into TargetLowering. There will be a lot
...
of EH stuff going into there, so we can wait to add them all then.
llvm-svn: 80036
2009-08-25 21:31:39 +00:00