oota-llvm.git
14 years agoCMake: Build utils/KillTheDoctor only on MSVC for now.
NAKAMURA Takumi [Tue, 26 Oct 2010 05:08:27 +0000 (05:08 +0000)]
CMake: Build utils/KillTheDoctor only on MSVC for now.

Mingw does not have the header <dbghelp.h>.
Thanks to Daniel Newton, testing it on mingw.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117352 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUse instruction itinerary to determine what instructions are 'cheap'.
Evan Cheng [Tue, 26 Oct 2010 02:08:50 +0000 (02:08 +0000)]
Use instruction itinerary to determine what instructions are 'cheap'.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117348 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoNEON vmov's are in Neon domain.
Evan Cheng [Tue, 26 Oct 2010 02:03:05 +0000 (02:03 +0000)]
NEON vmov's are in Neon domain.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117347 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFor statistics that are only used in functions declared in !NDEBUG, wrap the
Nick Lewycky [Tue, 26 Oct 2010 00:51:57 +0000 (00:51 +0000)]
For statistics that are only used in functions declared in !NDEBUG, wrap the
declarations in !NDEBUG to avoid -Wunused-variable warnings. Patch by
Matt Beaumont-Gay!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117345 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoInlineSpiller can also update LiveStacks.
Jakob Stoklund Olesen [Tue, 26 Oct 2010 00:11:35 +0000 (00:11 +0000)]
InlineSpiller can also update LiveStacks.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117338 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMake the spiller responsible for updating the LiveStacks analysis.
Jakob Stoklund Olesen [Tue, 26 Oct 2010 00:11:33 +0000 (00:11 +0000)]
Make the spiller responsible for updating the LiveStacks analysis.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117337 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoWhen the "true" and "false" blocks of a diamond if-conversion are the same,
Bob Wilson [Tue, 26 Oct 2010 00:02:24 +0000 (00:02 +0000)]
When the "true" and "false" blocks of a diamond if-conversion are the same,
do not double-count the duplicate instructions by counting once from the
beginning and again from the end.  Keep track of where the duplicates from
the beginning ended and don't go past that point when counting duplicates
at the end.  Radar 8589805.

This change causes one of the MC/ARM/simple-fp-encoding tests to produce
different (better!) code without the vmovne instruction being tested.
I changed the test to produce vmovne and vmoveq instructions but moving
between register files in the opposite direction.  That's not quite the same
but predicated versions of those instructions weren't being tested before,
so at least the test coverage is not any worse, just different.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117333 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoChange if-conversion to keep track of the extra cost due to microcoded
Bob Wilson [Tue, 26 Oct 2010 00:02:21 +0000 (00:02 +0000)]
Change if-conversion to keep track of the extra cost due to microcoded
instructions separately from the count of non-predicated instructions.  The
instruction count is used in places to determine how many instructions to
copy, predicate, etc. and things get confused if that count includes the
extra cost for microcoded ops.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117332 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTidy up redundant check.
Bob Wilson [Tue, 26 Oct 2010 00:02:19 +0000 (00:02 +0000)]
Tidy up redundant check.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117331 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoNeuter r117193 as it causes significant post-ra scheduler compile time regression.
Evan Cheng [Mon, 25 Oct 2010 23:56:21 +0000 (23:56 +0000)]
Neuter r117193 as it causes significant post-ra scheduler compile time regression.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117329 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTests for NEON encoding of vmax.
Owen Anderson [Mon, 25 Oct 2010 23:45:34 +0000 (23:45 +0000)]
Tests for NEON encoding of vmax.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117327 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTests for NEON encoding of vmin.
Owen Anderson [Mon, 25 Oct 2010 23:35:36 +0000 (23:35 +0000)]
Tests for NEON encoding of vmin.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117326 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoProduce the headers directly in the Finish method. This allows us to use
Rafael Espindola [Mon, 25 Oct 2010 22:26:55 +0000 (22:26 +0000)]
Produce the headers directly in the Finish method. This allows us to use
the existing streamer methods that are endian safe.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117323 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAn stdcall function calling a non-stdcall function
Dale Johannesen [Mon, 25 Oct 2010 22:17:05 +0000 (22:17 +0000)]
An stdcall function calling a non-stdcall function
cannot use tailcall.  PR 8461.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117322 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSupport TBAA attachments on calls. This is somewhat experimental.
Dan Gohman [Mon, 25 Oct 2010 21:38:20 +0000 (21:38 +0000)]
Support TBAA attachments on calls. This is somewhat experimental.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117317 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSimplify.
Devang Patel [Mon, 25 Oct 2010 21:31:46 +0000 (21:31 +0000)]
Simplify.
Do not count use of sdisel for single call instruction.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117316 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd correct encodings for NEON vabal.
Owen Anderson [Mon, 25 Oct 2010 21:29:04 +0000 (21:29 +0000)]
Add correct encodings for NEON vabal.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117315 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix chaining in TBAA's pointsToConstantMemory.
Dan Gohman [Mon, 25 Oct 2010 21:24:55 +0000 (21:24 +0000)]
Fix chaining in TBAA's pointsToConstantMemory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117314 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate SelectBasicBlock signature. This should have been committed with r117310.
Devang Patel [Mon, 25 Oct 2010 21:04:12 +0000 (21:04 +0000)]
Update SelectBasicBlock signature. This should have been committed with r117310.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117312 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd counters to count basic blocks and machine basic blocks with out of order line...
Devang Patel [Mon, 25 Oct 2010 20:55:43 +0000 (20:55 +0000)]
Add counters to count basic blocks and machine basic blocks with out of order line number info.
Add counters to count how many basic blocks are entirely selected by fastisel.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117310 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd correct NEON encodings for vaba.
Owen Anderson [Mon, 25 Oct 2010 20:52:57 +0000 (20:52 +0000)]
Add correct NEON encodings for vaba.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117309 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd simple counter to count no. of basic blocks without any line number information...
Devang Patel [Mon, 25 Oct 2010 20:45:32 +0000 (20:45 +0000)]
Add simple counter to count no. of basic blocks without any line number information. At -O0, these basic block coule cause less than optimial debugging experience.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117307 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTests for NEON encoding of vabdl.
Owen Anderson [Mon, 25 Oct 2010 20:36:28 +0000 (20:36 +0000)]
Tests for NEON encoding of vabdl.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117303 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd tests for NEON encoding of vabd.
Owen Anderson [Mon, 25 Oct 2010 20:29:27 +0000 (20:29 +0000)]
Add tests for NEON encoding of vabd.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117302 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoOnly read one bit for testing for a readonly type, leaving the other
Dan Gohman [Mon, 25 Oct 2010 20:22:29 +0000 (20:22 +0000)]
Only read one bit for testing for a readonly type, leaving the other
bits open for future uses.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117301 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMC/AsmParser: Fix relative precedence of {+,-} and comparison ops.
Daniel Dunbar [Mon, 25 Oct 2010 20:18:56 +0000 (20:18 +0000)]
MC/AsmParser: Fix relative precedence of {+,-} and comparison ops.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117299 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMC/AsmLexer: Fix bug in source location for Slash token.
Daniel Dunbar [Mon, 25 Oct 2010 20:18:53 +0000 (20:18 +0000)]
MC/AsmLexer: Fix bug in source location for Slash token.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117298 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agotweak test.
Daniel Dunbar [Mon, 25 Oct 2010 20:18:49 +0000 (20:18 +0000)]
tweak test.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117297 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agollvm-mc: Teach -as-lex to print the raw token string as well.
Daniel Dunbar [Mon, 25 Oct 2010 20:18:46 +0000 (20:18 +0000)]
llvm-mc: Teach -as-lex to print the raw token string as well.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117296 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMC/AsmParser: Rewrite test to actually check some parts of expression parsing,
Daniel Dunbar [Mon, 25 Oct 2010 20:18:41 +0000 (20:18 +0000)]
MC/AsmParser: Rewrite test to actually check some parts of expression parsing,
now that we have macros and friends. Uncovered a bug in macro expansion...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117295 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAttempt to provide correct encodings for NEON vbit and vbif, even though we can't...
Owen Anderson [Mon, 25 Oct 2010 20:17:22 +0000 (20:17 +0000)]
Attempt to provide correct encodings for NEON vbit and vbif, even though we can't test them at the moment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117294 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoProvide correct NEON encodings for vbsl.
Owen Anderson [Mon, 25 Oct 2010 20:13:13 +0000 (20:13 +0000)]
Provide correct NEON encodings for vbsl.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117293 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoimm12 operands aren't Thumb2 only, so rename the printer helper function.
Jim Grosbach [Mon, 25 Oct 2010 20:00:01 +0000 (20:00 +0000)]
imm12 operands aren't Thumb2 only, so rename the printer helper function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117291 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd a comment.
Dan Gohman [Mon, 25 Oct 2010 19:47:25 +0000 (19:47 +0000)]
Add a comment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117288 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMake the description of the hotpatch attribute even more generic. Spotted by
Charles Davis [Mon, 25 Oct 2010 19:07:39 +0000 (19:07 +0000)]
Make the description of the hotpatch attribute even more generic. Spotted by
Michael Spencer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117286 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd correct instruction encodings for vbic, vorn, and vmvn.
Owen Anderson [Mon, 25 Oct 2010 18:43:52 +0000 (18:43 +0000)]
Add correct instruction encodings for vbic, vorn, and vmvn.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117282 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd a virtual destructor.
Rafael Espindola [Mon, 25 Oct 2010 18:38:32 +0000 (18:38 +0000)]
Add a virtual destructor.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117280 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoProvide correct NEON encodings for vand, veor, and vorr.
Owen Anderson [Mon, 25 Oct 2010 18:28:30 +0000 (18:28 +0000)]
Provide correct NEON encodings for vand, veor, and vorr.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117279 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd tests for NEON encoding of vtst.
Owen Anderson [Mon, 25 Oct 2010 18:10:34 +0000 (18:10 +0000)]
Add tests for NEON encoding of vtst.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117277 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd NEON encoding tests for vcgt and vacgt.
Owen Anderson [Mon, 25 Oct 2010 18:03:59 +0000 (18:03 +0000)]
Add NEON encoding tests for vcgt and vacgt.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117276 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd support for emitting ARM file attributes.
Rafael Espindola [Mon, 25 Oct 2010 17:50:35 +0000 (17:50 +0000)]
Add support for emitting ARM file attributes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117275 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd tests for NEON encodings of vcge and vacge.
Owen Anderson [Mon, 25 Oct 2010 17:49:32 +0000 (17:49 +0000)]
Add tests for NEON encodings of vcge and vacge.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117274 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd a warning about our inability to test the encoding of vceq with immediate zero.
Owen Anderson [Mon, 25 Oct 2010 17:33:02 +0000 (17:33 +0000)]
Add a warning about our inability to test the encoding of vceq with immediate zero.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117273 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoIn which I learn how to forward declare template classes.
Jakob Stoklund Olesen [Mon, 25 Oct 2010 17:27:30 +0000 (17:27 +0000)]
In which I learn how to forward declare template classes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117272 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd tests for NEON encoding of vceq.
Owen Anderson [Mon, 25 Oct 2010 17:20:26 +0000 (17:20 +0000)]
Add tests for NEON encoding of vceq.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117270 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd tests for NEON encoding of vsubhn and vrsubhn.
Owen Anderson [Mon, 25 Oct 2010 17:12:46 +0000 (17:12 +0000)]
Add tests for NEON encoding of vsubhn and vrsubhn.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117269 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate comments; BasicAA is no longer necessarily the end of the chain.
Dan Gohman [Mon, 25 Oct 2010 16:29:52 +0000 (16:29 +0000)]
Update comments; BasicAA is no longer necessarily the end of the chain.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117268 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMake hotpatch attribute description a little less Wintel-specific.
Charles Davis [Mon, 25 Oct 2010 16:29:03 +0000 (16:29 +0000)]
Make hotpatch attribute description a little less Wintel-specific.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117267 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoReintroduce these asserts, now that BasicAA is a normal AliasAnalysis pass.
Dan Gohman [Mon, 25 Oct 2010 16:28:57 +0000 (16:28 +0000)]
Reintroduce these asserts, now that BasicAA is a normal AliasAnalysis pass.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117266 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix a case where instcombine was stripping metadata (and alignment)
Dan Gohman [Mon, 25 Oct 2010 16:16:27 +0000 (16:16 +0000)]
Fix a case where instcombine was stripping metadata (and alignment)
from stores when folding in bitcasts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117265 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd a new 'hotpatch' attribute. This attribute will insert a two-byte no-op
Charles Davis [Mon, 25 Oct 2010 15:37:09 +0000 (15:37 +0000)]
Add a new 'hotpatch' attribute. This attribute will insert a two-byte no-op
instruction at the beginning of each function that has the attribute, allowing
the function to be easily hooked and/or patched.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117264 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoReference RegionPass to stop it being eliminated.
Tobias Grosser [Mon, 25 Oct 2010 15:36:50 +0000 (15:36 +0000)]
Reference RegionPass to stop it being eliminated.

Contributed by: ether

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117263 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoATTRIBUTE_UNUSED has been renamed to LLVM_ATTRIBUTE_UNUSED.
Duncan Sands [Mon, 25 Oct 2010 13:10:03 +0000 (13:10 +0000)]
ATTRIBUTE_UNUSED has been renamed to LLVM_ATTRIBUTE_UNUSED.
Rather than rename this instance, use the cast-to-void idiom
instead.  This will hopefully fix the windows buildbots.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117262 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove deprecated macro names. Hopefully this will unbreak the
Duncan Sands [Mon, 25 Oct 2010 12:47:22 +0000 (12:47 +0000)]
Remove deprecated macro names.  Hopefully this will unbreak the
smooshlab build.  The breakage seems to be due to a collision
between LLVM's ATTRIBUTE_UNUSED and gcc's which was previously
hidden due to header files being included in a lucky order.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117260 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate target feature matrix for CellSPU
Kalle Raiskila [Mon, 25 Oct 2010 08:57:30 +0000 (08:57 +0000)]
Update target feature matrix for CellSPU

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117255 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate target feature matrix for Blackfin.
Jakob Stoklund Olesen [Sun, 24 Oct 2010 20:04:05 +0000 (20:04 +0000)]
Update target feature matrix for Blackfin.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117245 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdating target feature matrix to indicate current MBlaze status.
Wesley Peck [Sun, 24 Oct 2010 18:50:12 +0000 (18:50 +0000)]
Updating target feature matrix to indicate current MBlaze status.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117244 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd X86::reloc_global_offset_table and use it to have a single place where
Rafael Espindola [Sun, 24 Oct 2010 17:35:42 +0000 (17:35 +0000)]
Add X86::reloc_global_offset_table and use it to have a single place where
we check for _GLOBAL_OFFSET_TABLE_.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117241 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agobroken link
Chris Lattner [Sun, 24 Oct 2010 16:24:22 +0000 (16:24 +0000)]
broken link

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117232 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoadd a big table with target features.
Chris Lattner [Sun, 24 Oct 2010 16:18:00 +0000 (16:18 +0000)]
add a big table with target features.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117230 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd svn:ignore
Che-Liang Chiou [Sun, 24 Oct 2010 15:40:18 +0000 (15:40 +0000)]
Add svn:ignore

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117228 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix PR8445: a block with no predecessors may be the entry block, in which case
Duncan Sands [Sun, 24 Oct 2010 12:23:30 +0000 (12:23 +0000)]
Fix PR8445: a block with no predecessors may be the entry block, in which case
it isn't unreachable and should not be zapped.  The check for the entry block
was missing in one case: a block containing a unwind instruction.  While there,
do some small cleanups: "M" is not a great name for a Function* (it would be
more appropriate for a Module*), change it to "Fn"; use Fn in more places.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117224 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd tests for NEON encoding of vqsub.
Owen Anderson [Sat, 23 Oct 2010 18:02:16 +0000 (18:02 +0000)]
Add tests for NEON encoding of vqsub.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117214 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSmallVectorize.
Benjamin Kramer [Sat, 23 Oct 2010 17:10:24 +0000 (17:10 +0000)]
SmallVectorize.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117213 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMove rejection of NEON parameters earlier in fast isel call processing,
Eric Christopher [Sat, 23 Oct 2010 09:37:17 +0000 (09:37 +0000)]
Move rejection of NEON parameters earlier in fast isel call processing,
note that we can actually handle some f64 arguments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117209 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoConstify another 2 disassembler tables.
Benjamin Kramer [Sat, 23 Oct 2010 09:28:42 +0000 (09:28 +0000)]
Constify another 2 disassembler tables.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117208 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMake the disassembler tables const so they end up in read-only memory.
Benjamin Kramer [Sat, 23 Oct 2010 09:10:44 +0000 (09:10 +0000)]
Make the disassembler tables const so they end up in read-only memory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117206 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoX86: Emit _fltused instead of __fltused on Windows x64.
Michael J. Spencer [Sat, 23 Oct 2010 09:06:59 +0000 (09:06 +0000)]
X86: Emit _fltused instead of __fltused on Windows x64.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117205 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMove the remaining attribute macros to systematic names based on the attribute
Chandler Carruth [Sat, 23 Oct 2010 08:40:19 +0000 (08:40 +0000)]
Move the remaining attribute macros to systematic names based on the attribute
name and prefixed with 'LLVM_'.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117203 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove a define which is never referenced.
Chandler Carruth [Sat, 23 Oct 2010 08:25:16 +0000 (08:25 +0000)]
Remove a define which is never referenced.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117202 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSwitch attribute macros to use 'LLVM_' as a prefix. We retain the old names
Chandler Carruth [Sat, 23 Oct 2010 08:10:43 +0000 (08:10 +0000)]
Switch attribute macros to use 'LLVM_' as a prefix. We retain the old names
until other LLVM projects using these are cleaned up.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117200 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix a likely bug in an assertion by adding parentheses around '||'. This bug
Chandler Carruth [Sat, 23 Oct 2010 07:46:14 +0000 (07:46 +0000)]
Fix a likely bug in an assertion by adding parentheses around '||'. This bug
was found by a GCC warning. ;]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117199 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoResurrect mcc16, it is useful as an example.
Mikhail Glushenkov [Sat, 23 Oct 2010 07:33:02 +0000 (07:33 +0000)]
Resurrect mcc16, it is useful as an example.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117198 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove -llvmc-temp-hack from tblgen.
Mikhail Glushenkov [Sat, 23 Oct 2010 07:32:53 +0000 (07:32 +0000)]
Remove -llvmc-temp-hack from tblgen.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117197 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSyntax tweak in llvmc: (something [a,b,c]) -> (something a, b, c).
Mikhail Glushenkov [Sat, 23 Oct 2010 07:32:46 +0000 (07:32 +0000)]
Syntax tweak in llvmc: (something [a,b,c]) -> (something a, b, c).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117196 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTrailing whitespace.
Mikhail Glushenkov [Sat, 23 Oct 2010 07:32:37 +0000 (07:32 +0000)]
Trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117195 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoEnable ARM fastcc.
Evan Cheng [Sat, 23 Oct 2010 02:19:37 +0000 (02:19 +0000)]
Enable ARM fastcc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117194 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoProperly model the latency of register defs which are 1) function returns or
Evan Cheng [Sat, 23 Oct 2010 02:10:46 +0000 (02:10 +0000)]
Properly model the latency of register defs which are 1) function returns or
2) live-outs.

Previously the post-RA schedulers completely ignore these dependencies since
returns, branches, etc. are all scheduling barriers. This patch model the
latencies between instructions being scheduled and the barriers. It also
handle calls by marking their register uses.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117193 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoLatency between CPSR def and branch is zero.
Evan Cheng [Sat, 23 Oct 2010 02:04:38 +0000 (02:04 +0000)]
Latency between CPSR def and branch is zero.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117192 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoVerify LiveIntervals against the CFG, ensuring that live-in values are live-out
Jakob Stoklund Olesen [Sat, 23 Oct 2010 00:49:09 +0000 (00:49 +0000)]
Verify LiveIntervals against the CFG, ensuring that live-in values are live-out
of all predecessors.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117191 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd tests for NEON encoding of vhsub.
Owen Anderson [Fri, 22 Oct 2010 23:58:22 +0000 (23:58 +0000)]
Add tests for NEON encoding of vhsub.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117189 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTrailing whitespace.
Jim Grosbach [Fri, 22 Oct 2010 23:48:29 +0000 (23:48 +0000)]
Trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117188 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd a CMP test.
Jim Grosbach [Fri, 22 Oct 2010 23:48:01 +0000 (23:48 +0000)]
Add a CMP test.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117187 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd tests for NEON encoding of vsubw.
Owen Anderson [Fri, 22 Oct 2010 23:46:07 +0000 (23:46 +0000)]
Add tests for NEON encoding of vsubw.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117186 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agotidy up
Jim Grosbach [Fri, 22 Oct 2010 23:46:04 +0000 (23:46 +0000)]
tidy up

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117185 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd tests for NEON encoding of vsubl.
Owen Anderson [Fri, 22 Oct 2010 23:36:36 +0000 (23:36 +0000)]
Add tests for NEON encoding of vsubl.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117183 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoNonvirtual dtor that was accessible enough to be bad.
Andrew Trick [Fri, 22 Oct 2010 23:33:19 +0000 (23:33 +0000)]
Nonvirtual dtor that was accessible enough to be bad.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117180 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd tests for NEON encoding of vsub.
Owen Anderson [Fri, 22 Oct 2010 23:21:04 +0000 (23:21 +0000)]
Add tests for NEON encoding of vsub.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117177 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agofix memory-layout assumption which only holds on little-endian systems
Gabor Greif [Fri, 22 Oct 2010 23:16:11 +0000 (23:16 +0000)]
fix memory-layout assumption which only holds on little-endian systems

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117176 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoThis is a prototype of an experimental register allocation
Andrew Trick [Fri, 22 Oct 2010 23:09:15 +0000 (23:09 +0000)]
This is a prototype of an experimental register allocation
framework. It's purpose is not to improve register allocation per se,
but to make it easier to develop powerful live range splitting. I call
it the basic allocator because it is as simple as a global allocator
can be but provides the building blocks for sophisticated register
allocation with live range splitting.

A minimal implementation is provided that trivially spills whenever it
runs out of registers. I'm checking in now to get high-level design
and style feedback. I've only done minimal testing. The next step is
implementing a "greedy" allocation algorithm that does some register
reassignment and makes better splitting decisions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117174 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd tests for NEON encoding of vqdmlsl.
Owen Anderson [Fri, 22 Oct 2010 23:08:47 +0000 (23:08 +0000)]
Add tests for NEON encoding of vqdmlsl.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117173 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDo not install libBugpointPasses.dylib for Apple builds. Radar 8585383.
Bob Wilson [Fri, 22 Oct 2010 23:04:17 +0000 (23:04 +0000)]
Do not install libBugpointPasses.dylib for Apple builds.  Radar 8585383.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117172 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd tests for NEON encoding of vmlsl.
Owen Anderson [Fri, 22 Oct 2010 23:02:27 +0000 (23:02 +0000)]
Add tests for NEON encoding of vmlsl.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117171 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd more verification of LiveIntervals.
Jakob Stoklund Olesen [Fri, 22 Oct 2010 22:48:58 +0000 (22:48 +0000)]
Add more verification of LiveIntervals.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117170 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoBe more strict about detecting multi-use blocks for isolation.
Jakob Stoklund Olesen [Fri, 22 Oct 2010 22:48:56 +0000 (22:48 +0000)]
Be more strict about detecting multi-use blocks for isolation.

When a block has exactly two uses and the register is both live-in and live-out,
don't isolate the block. We would be inserting two copies, so we haven't really
made any progress.

If the live-in and live-out values separate into disconnected components after
splitting, we would be making progress. We can't detect that for now.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117169 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agotidy up.
Jim Grosbach [Fri, 22 Oct 2010 22:15:48 +0000 (22:15 +0000)]
tidy up.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117166 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoARM mode encoding information for CLZ, RBIT, REV*, and PKH*.
Jim Grosbach [Fri, 22 Oct 2010 22:12:16 +0000 (22:12 +0000)]
ARM mode encoding information for CLZ, RBIT, REV*, and PKH*.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117165 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix the name of libLLVMHello.dylib so that it does not get installed for
Bob Wilson [Fri, 22 Oct 2010 22:10:57 +0000 (22:10 +0000)]
Fix the name of libLLVMHello.dylib so that it does not get installed for
Apple builds.  Radar 8585383.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117164 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove duplicate test.
Jim Grosbach [Fri, 22 Oct 2010 22:04:28 +0000 (22:04 +0000)]
Remove duplicate test.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117158 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agotidy up.
Jim Grosbach [Fri, 22 Oct 2010 22:01:56 +0000 (22:01 +0000)]
tidy up.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117157 91177308-0d34-0410-b5e6-96231b3b80d8