Commit Graph

50863 Commits

Author SHA1 Message Date
Anton Korobeynikov
fc9489a4c6 Expand few nodes until someone will be crazy enough to implement them natively :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79659 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 18:52:42 +00:00
Anton Korobeynikov
2a5b155ba8 Typo :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79657 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 18:41:02 +00:00
Anton Korobeynikov
324a99f395 Correct instruction names for subtract-with-borrow
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79656 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 18:37:28 +00:00
Daniel Dunbar
0705fbf52f llvm-mc/Mach-O: Support byte and fill value emission.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79652 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 18:29:01 +00:00
Dan Gohman
7178010a16 Don't assume that the operand of an inttoptr is an pointer-sized integer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79651 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 18:27:26 +00:00
Bill Wendling
636e258a53 Fix typo. Should check both values of RangeUse for 0. Patch by Marius Wachtler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79649 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 18:16:06 +00:00
Anton Korobeynikov
3c2734c82b Handle 'r' inline asm constraint
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79648 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 18:15:41 +00:00
Bob Wilson
d23b33435a Fix a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79643 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 17:41:48 +00:00
Duncan Sands
1c3858a06c Fix a problem noticed by gcc-4.4:
warning: comparison is always true due to limited range of data type.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79642 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 17:16:10 +00:00
Dan Gohman
cda9706cb7 Change getelementptr folding to use APInt instead of uint64_t for
offset computations. This fixes a truncation bug on targets that
don't have 64-bit pointers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79639 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 16:52:54 +00:00
Bob Wilson
3b83287c4e Add some tests for vext.16 and vext.32.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79638 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 16:35:24 +00:00
Daniel Dunbar
e6c94c8d3a Fix -Asserts warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79636 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 16:17:36 +00:00
Daniel Dunbar
bc38ca7321 llvm-mc: Accept .fill size of 8.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79635 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 15:43:35 +00:00
Anton Korobeynikov
25f1aa04ff Fix a typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79634 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 15:41:56 +00:00
Andreas Neustifter
4678c2d438 Removed profiling test, lli not available on all platforms.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79633 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 15:27:35 +00:00
Sanjiv Gupta
eaa8b1f81d Add a pass to do call graph analyis to overlay the autos and frame sections of
leaf functions. This pass will be extended to color other nodes of the call tree 
as well in future.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79631 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 15:22:33 +00:00
Benjamin Kramer
1f2b32c5c6 Fix build on platforms where stdint.h is not implicitly included in the standard headers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79629 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 13:59:49 +00:00
Anton Korobeynikov
d083dfb60b More cpp backend fixes. Now for FP stuff.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79626 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 12:50:54 +00:00
Anton Korobeynikov
051cfd683f Fix some typos and use type-based isel for VZIP/VUZP/VTRN
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79625 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 12:41:42 +00:00
Anton Korobeynikov
1c8e581832 Add lowering of ARM 4-element shuffles to multiple instructios via perfectshuffle-generated table.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79624 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 12:41:24 +00:00
Anton Korobeynikov
c9d44f0d9c Add simple cost model to perfect shuffle. Currently we're doing just greedy search for cost instead of (proper) dynamic programming approach.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79623 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 12:41:03 +00:00
Anton Korobeynikov
62e84f177d Add nodes & dummy matchers for some v{zip,uzp,trn} instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79622 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 12:40:50 +00:00
Anton Korobeynikov
8e6c2b9041 Expand EXTRACT_SUBVECTOR
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79621 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 12:40:35 +00:00
Anton Korobeynikov
5da894f5c4 Provide vext.{16,32}
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79620 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 12:40:21 +00:00
Anton Korobeynikov
d0ac234b1b Use masks not nodes for vector shuffle predicates. Provide set of 'legal' masks, so legalizer won't infinite cycle
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79619 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 12:40:07 +00:00
Anton Korobeynikov
cb02ddeda0 Whitespace cleanup
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79618 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 12:39:38 +00:00
Benjamin Kramer
71b9732ef6 Update CMakeLists.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79617 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 11:28:56 +00:00
Richard Pennington
a32b183918 bug 4530: Make debug information static to it is preservered during bitcode linking.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79616 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 11:10:31 +00:00
Andreas Neustifter
e879bdad49 Added tests for Profiling Infrastructure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79615 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 09:36:28 +00:00
Bill Wendling
5ee9c46391 Make for 32-bit only.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79614 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 09:29:26 +00:00
Daniel Dunbar
e4c0bb6f28 Tweak svn:ignore
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79613 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 09:14:54 +00:00
Daniel Dunbar
fb4a6b3976 llvm-mc: Start MCAssembler and MCMachOStreamer.
- Together these form the (Mach-O) back end of the assembler.

 - MCAssembler is the actual assembler backend, which is designed to have a
   reasonable API. This will eventually grow to support multiple object file
   implementations, but for now its Mach-O/i386 only.

 - MCMachOStreamer adapts the MCStreamer "actions" API to the MCAssembler API,
   e.g. converting the various directives into fragments, managing state like
   the current section, and so on.

 - llvm-mc will use the new backend via '-filetype=obj', which may eventually
   be, but is not yet, since I hear that people like assemblers which actually
   assemble.

 - The only thing that works at the moment is changing sections. For the time
   being I have a Python Mach-O dumping tool in test/scripts so this stuff can
   be easily tested, eventually I expect to replace this with a real LLVM tool.

 - More doxyments to come.

I assume that since this stuff doesn't touch any of the things which are part of
2.6 that it is ok to put this in not so long before the freeze, but if someone
objects let me know, I can pull it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79612 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 09:11:24 +00:00
Daniel Dunbar
b3f3c0387b llvm-mc: Various section parsing fixes.
- Add missing flags for various Objective-C sections.

 - Fix names for [non_]lazy_symbol_pointer (these are misspelled in the manual).

 - .symbol_stub does not have the self modifying code flag set (this appears to
   be wrong in the manual?).

 - Add implicit alignment values; not yet used.

Also, call MCStreamer::Finish at the end of a successful parse.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79611 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 08:34:18 +00:00
Bill Wendling
6e3b787f1d Probably should emit bitcode instead of text.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79607 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 08:02:19 +00:00
Daniel Dunbar
32223d3098 Don't install llvm-mc by default.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79604 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 07:28:33 +00:00
Bill Wendling
9d7a8cc57e Remove #include <iostream>.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79603 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 06:52:44 +00:00
Erick Tryzelaar
56c39eb232 Clean up the APInt function getDigit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79602 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 06:48:37 +00:00
Bill Wendling
5504225c2a Correct for recent assert change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79601 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 06:35:41 +00:00
Bill Wendling
f7a86a4e1d Testcase for r79597.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79598 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 06:12:30 +00:00
Eric Christopher
e250f2a5ee Update error messages for '+'. Fix grammar and make the two
negative checks resemble each other.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79595 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 04:10:31 +00:00
Eric Christopher
d37eda8c1d Fix trailing whitespace and 80-col violation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79594 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 04:06:45 +00:00
Erick Tryzelaar
ae8f78d4de Fix bug with APInt::getBitsNeeded with for base 10 numbers 0-9.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79593 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 03:15:28 +00:00
Erick Tryzelaar
bb97531a5a Allow '+' to appear in APInt strings, and add more unit tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79592 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 03:15:14 +00:00
Bob Wilson
d4b4cf524b Remove Neon intrinsics for VZIP, VUZP, and VTRN. We will represent these as
vector shuffles.  Temporarily remove the tests for these operations until the
new implementation is working.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79579 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-21 00:01:42 +00:00
Owen Anderson
2ea20154ce Re-revert r79555. Apparently it's not just buildbot weirdness.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79578 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-20 23:51:44 +00:00
Erick Tryzelaar
c78b33bdc1 Add support for including '+' in APFloat strings, more asserts,
and many new unit tests.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79574 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-20 23:30:43 +00:00
Owen Anderson
28998d1806 Reapply r79555 for testing. Daniel's trying to work out some buildbot weirdnesss.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79572 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-20 23:14:20 +00:00
Dale Johannesen
a70872e15e Use FileCheck even though this means testing for something
that has nothing to do with the point of the test, per Chris.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79569 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-20 22:12:08 +00:00
Bill Wendling
607abd262e --- Reverse-merging r79555 into '.':
U    include/llvm/Target/TargetData.h
U    lib/Target/TargetData.cpp

Temporarily revert 79555. It was causing hangs and test failures.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79568 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-20 22:04:42 +00:00
Bill Wendling
a583c55864 Attempt to comment this code more.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79567 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-20 22:02:24 +00:00