Bill Wendling
d00c304509
Add dump method for debugging.
...
llvm-svn: 146293
2011-12-09 23:18:34 +00:00
Bill Wendling
4f3e4c6380
Random cleanups. No description changes.
...
llvm-svn: 146288
2011-12-09 22:41:40 +00:00
Jim Grosbach
43cade9bb2
ARM allows '' syntax, not just '#imm' for assembly.
...
Backwards compatibility with 'gas'. #imm is the preferered and documented
syntax, but lots of existing code uses the '$' prefix, so we should
support it if we can.
llvm-svn: 146285
2011-12-09 22:25:03 +00:00
Kostya Serebryany
e3281eff91
[asan] call __asan_init from .preinit_array. This simplifies __asan_init vs malloc chicken-and-egg situation on Android and probably on other flavours of Linux. Patch by eugenis@google.com.
...
llvm-svn: 146284
2011-12-09 22:09:32 +00:00
Jim Grosbach
356ad6d232
ARM assembly aliases for BIC<-->AND (immediate).
...
When the immediate operand of an AND or BIC instruction isn't representable
in the immediate field of the instruction, but the bitwise negation of the
immediate is, assemble the instruction as the inverse operation instead
with the inverted immediate as the operand.
rdar://10550057
llvm-svn: 146283
2011-12-09 22:02:17 +00:00
Evan Cheng
77f0fb0296
Update test to something more sensible.
...
llvm-svn: 146282
2011-12-09 21:54:10 +00:00
Jim Grosbach
4181008717
ARM NEON data type aliases for VBIC(register).
...
llvm-svn: 146281
2011-12-09 21:46:04 +00:00
Jim Grosbach
489e81da30
ARM assembly parsing and encoding for VLD2 with writeback.
...
Refactor the instructions into fixed writeback and register-stride
writeback variants to simplify the offset operand (no more optional
register operand using reg0). This is a simpler representation and allows
the assembly parser to more easily handle these instructions.
Add tests for the instruction variants now supported.
llvm-svn: 146278
2011-12-09 21:28:25 +00:00
Jakub Staszak
4077c5b401
SplitBlockPredecessors uses ArrayRef instead of Data and Size.
...
llvm-svn: 146277
2011-12-09 21:19:53 +00:00
Chad Rosier
7e0dc23863
[fast-isel] Add support for selecting insertvalue.
...
rdar://10530851
llvm-svn: 146276
2011-12-09 20:09:54 +00:00
Rafael Espindola
b5c511f7b7
Handle reloc_signed_4byte in here. Not doing so was a regression from my
...
previous commit. It is strange that we see it in 32 bits. We already
have a fixme about it.
llvm-svn: 146273
2011-12-09 19:57:29 +00:00
Jakob Stoklund Olesen
ae14ef74e0
User a helper overload for a common pattern.
...
llvm-svn: 146270
2011-12-09 19:44:39 +00:00
Bill Wendling
5a91169c03
Revert r146041 et al. The FunctionPass doesn't take an address but the ID.
...
llvm-svn: 146268
2011-12-09 19:11:02 +00:00
Jim Grosbach
5c5a31449d
Tidy up. Better base class factoring.
...
llvm-svn: 146267
2011-12-09 19:07:20 +00:00
Jim Grosbach
02aac98831
Tidy up. Better base class factoring.
...
llvm-svn: 146266
2011-12-09 18:54:11 +00:00
Jakob Stoklund Olesen
630b836b58
Tweak debugging output.
...
llvm-svn: 146264
2011-12-09 18:20:35 +00:00
Kevin Enderby
63cf89d532
The second part of support for generating dwarf for assembly source files. This
...
generates the dwarf Compile Unit DIE and a dwarf subprogram DIE for each
non-temporary label.
The next part will be to get the clang driver to enable this when assembling
a .s file. rdar://9275556
llvm-svn: 146262
2011-12-09 18:09:40 +00:00
Benjamin Kramer
54f11215e8
This is now implemented.
...
llvm-svn: 146258
2011-12-09 15:45:57 +00:00
Benjamin Kramer
06cd66b1d7
X86: Add patterns for the various rounding ops for SSE4.1 and AVX.
...
llvm-svn: 146257
2011-12-09 15:44:03 +00:00
Benjamin Kramer
66bfc0739d
X86: Split (v)rounds[sd] into a normal and an intrinsic version.
...
llvm-svn: 146256
2011-12-09 15:43:55 +00:00
Evan Cheng
5a218b203a
Move isUnpredicatedTerminator() default implementation to TargetInstrInfoImpl to break Target's dependency on CodeGen.
...
llvm-svn: 146247
2011-12-09 06:41:08 +00:00
Evan Cheng
e186276896
Remove hasSSE1orAVX(). It's the same as hasXMM().
...
llvm-svn: 146246
2011-12-09 06:32:46 +00:00
Andrew Trick
4f0b3bb42b
Add -unroll-runtime for unrolling loops with run-time trip counts.
...
Patch by Brendon Cahoon!
This extends the existing LoopUnroll and LoopUnrollPass. Brendon
measured no regressions in the llvm test suite with -unroll-runtime
enabled. This implementation works by using the existing loop
unrolling code to unroll the loop by a power-of-two (default 8). It
generates an if-then-else sequence of code prior to the loop to
execute the extra iterations before entering the unrolled loop.
llvm-svn: 146245
2011-12-09 06:19:40 +00:00
Evan Cheng
2c8bac6b4c
Forgot setting -march.
...
llvm-svn: 146244
2011-12-09 06:15:00 +00:00
Chandler Carruth
18c74d444a
Fix InitializeNativeTargetAsmParser in CMake builds by defining the
...
appropriate macro. Patch by Alexey Prokhin. Fixes PR11498.
llvm-svn: 146239
2011-12-09 03:31:58 +00:00
Rafael Espindola
82e22767cf
Handle the case of the magical _GLOBAL_OFFSET_TABLE_ showing up in a
...
symbol difference. This matches gas behavior and fixes PR11513.
We still don't handle _GLOBAL_OFFSET_TABLE_ in data sections.
llvm-svn: 146238
2011-12-09 03:03:58 +00:00
Chad Rosier
00721ab85b
Typo.
...
llvm-svn: 146234
2011-12-09 02:00:44 +00:00
Akira Hatanaka
8477374125
Rename WrapperPIC. It is now used for both pic and static.
...
llvm-svn: 146232
2011-12-09 01:53:17 +00:00
Akira Hatanaka
ce89ae9f84
jalr should use t9 ($25) for indirect calls regardless of the relocation model
...
specified.
llvm-svn: 146229
2011-12-09 01:45:12 +00:00
Devang Patel
361be2683a
Fix comment.
...
llvm-svn: 146226
2011-12-09 01:25:04 +00:00
Devang Patel
cba55d6c8d
Update stale comment.
...
llvm-svn: 146220
2011-12-09 01:18:48 +00:00
Eli Friedman
8f3db3867c
Fix a couple of logic bugs in TargetLowering::SimplifyDemandedBits. PR11514.
...
llvm-svn: 146219
2011-12-09 01:16:26 +00:00
Michael J. Spencer
fd9b0302a7
unittests/SupportTests: Fix test. pop modifies the current entry, thus the
...
dontlookhere check must be after it.
llvm-svn: 146217
2011-12-09 01:14:41 +00:00
Michael J. Spencer
4239ea1e2e
unittests/SupportTests: Add some outs()'s to debug the issues on some bots.
...
I have run these tests under many configurations on the exact same OS as
the failures, and I can't reproduce them :(.
llvm-svn: 146214
2011-12-09 00:45:09 +00:00
Devang Patel
a56a1ac691
Revert r146184. I am seeing performance regression cause by this patch in one test case.
...
llvm-svn: 146205
2011-12-08 23:52:00 +00:00
Jim Grosbach
5f3c519248
ARM convenience aliases for VSQRT.
...
llvm-svn: 146201
2011-12-08 22:51:25 +00:00
Michael J. Spencer
d85f1f84f3
Support/FileSystem: Implement recursive_directory_iterator and make
...
directory_iterator preserve InputIterator semantics on copy.
llvm-svn: 146200
2011-12-08 22:50:09 +00:00
Nick Lewycky
d2c1661e9f
Fix infinite loop in DSE when deleting a free in a reachable loop that's also
...
trivially infinite.
llvm-svn: 146197
2011-12-08 22:36:35 +00:00
Evan Cheng
ad8debd736
Add 256-bit variant vmovss and vmovsd patterns. rdar://10538417
...
llvm-svn: 146196
2011-12-08 22:30:45 +00:00
Eli Friedman
2e78501430
Remove reference to dead GEPSplitterPass. PR11506.
...
llvm-svn: 146195
2011-12-08 22:28:17 +00:00
Jim Grosbach
62873cae5f
ARM 64-bit VEXT assembly uses a .64 suffix, not .32, amazingly enough.
...
llvm-svn: 146194
2011-12-08 22:19:04 +00:00
Owen Anderson
285891eccf
Enhance both TargetLibraryInfo and SelectionDAGBuilder so that the latter can use the former to prevent the formation of libm SDNode's when -fno-builtin is passed.
...
llvm-svn: 146193
2011-12-08 22:15:21 +00:00
Jim Grosbach
a33fa8aa88
ARM VSHR implied destination operand form aliases.
...
llvm-svn: 146192
2011-12-08 22:06:06 +00:00
Evan Cheng
d8a73b8918
Add various missing AVX patterns which was causing crashes. Sadly, the generated
...
code looks pretty bad compared to SSE.
rdar://10538793
llvm-svn: 146191
2011-12-08 22:05:28 +00:00
Jim Grosbach
af9cc198cf
Tidy up a bit.
...
llvm-svn: 146190
2011-12-08 22:04:40 +00:00
Devang Patel
9680ebaff4
Refactor. No intentional functionality change.
...
llvm-svn: 146187
2011-12-08 21:48:01 +00:00
Chad Rosier
d0a0415340
Add rather verbose stats for fast-isel failures.
...
llvm-svn: 146186
2011-12-08 21:37:10 +00:00
Jim Grosbach
01485b7e6e
ARM asm parser, just issue a warning for a duplicate reg in a list.
...
For better 'gas' compatibility.
llvm-svn: 146185
2011-12-08 21:34:20 +00:00
Devang Patel
edfacfabb8
Filter "sink to" candidate blocks sooner. This avoids unnecessary computation to determine whether the block dominates all uses or not.
...
llvm-svn: 146184
2011-12-08 21:33:23 +00:00
Akira Hatanaka
6ba1394c6d
Pass a GlobalAddress instead of an ExternalSymbol to LowerCallTo in
...
MipsTargetLowering::LowerGlobalTLSAddress. This is necessary to have
call16(__tls_get_addr) emitted instead of got_disp(__tls_get_addr) when the
target is Mips64.
llvm-svn: 146183
2011-12-08 21:05:38 +00:00