Commit Graph

46000 Commits

Author SHA1 Message Date
Jim Grosbach
30eae3c022 PR2985 / <rdar://problem/6584986>
When compiling in Thumb mode, only the low (R0-R7) registers are available
for most instructions. Breaking the low registers into a new register class
handles this. Uses of R12, SP, etc, are handled explicitly where needed
with copies inserted to move results into low registers where the rest of
the code generator can deal with them.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68545 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07 20:34:09 +00:00
Mike Stump
f23e809be0 Remove ccc now. Radar 6737767
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68544 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07 20:29:25 +00:00
Torok Edwin
68c405d6e8 fix style.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68542 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07 19:45:59 +00:00
Bill Wendling
a0bd8109f9 Use 'name' instead of 'href'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68534 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07 18:54:06 +00:00
Bill Wendling
b1a61bd178 Fix verification failure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68531 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07 18:52:30 +00:00
Bill Wendling
f159402cbd Offer an explanation of why building LLVM-GCC with objdir == srcdir doesn't
work.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68530 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07 18:51:13 +00:00
Bill Wendling
290235f898 Another reformatting. No change in docs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68528 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07 18:40:56 +00:00
Torok Edwin
eb55f3ea3c Another attempt at fixing PR2975.
Types can have references to eachother, so we can't just call destroy on them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68523 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07 17:23:02 +00:00
Chris Lattner
ce8f9fe3c9 fix comment to reflect the implementation I ended up settling on.
Thanks to Duncan for noticing this


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68518 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07 16:30:31 +00:00
Chris Lattner
62ce3b31a7 fix rdar://6762290, a crash compiling cxx filt with clang.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68500 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07 05:03:34 +00:00
Chris Lattner
ae7dd8004e Add an API for the bitstream reader to read blobs and return
them by reference, instead of packing each byte into a
smallvector.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68486 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07 02:56:46 +00:00
Chris Lattner
683b08cf7c remove empty section
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68485 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07 02:55:53 +00:00
Dan Gohman
75b8eb225e Add svn:ignore properties.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68479 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07 00:26:29 +00:00
Chris Lattner
3f75d3176b stub out code for reading record with blobs as blobs. Not active yet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68472 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06 22:44:40 +00:00
Chris Lattner
123f384879 allow clients to look up abbrev id's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68471 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06 22:43:46 +00:00
Chris Lattner
298a82dd0d Add a new EmitRecordWithBlob API that allows a blob to be emitted
without converting each byte to a uint64_t to stick in a SmallVector.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68469 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06 22:26:26 +00:00
Chris Lattner
dcd006bf7b add a new Blob encoding abbreviation for bitcode files that emits
elements in a form that is efficient for the reader to just get a
pointer in memory and start reading.  APIs to do efficient reading
and writing are still todo.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68465 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06 21:50:39 +00:00
Bob Wilson
8f3434647d Handle 'a' modifier in ARM inline assembly.
Patch by Richard Pennington.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68464 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06 21:46:51 +00:00
Chris Lattner
30910bf1c9 split ReadAbbreviatedLiteral out of ReadAbbreviatedField.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68463 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06 21:37:10 +00:00
Chris Lattner
86bc23d5c1 reduce indentation with early-out
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68462 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06 21:34:58 +00:00
Chris Lattner
96153a45fd simplify code a bit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68461 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06 21:20:01 +00:00
Chris Lattner
40728791f5 simplify to reduce indentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68460 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06 21:12:29 +00:00
Torok Edwin
5ce1b11412 revert r68457, its crashing in make check.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68459 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06 20:57:34 +00:00
Chris Lattner
e2a466bfa9 Teach llvm-bcanalyzer to skip over the header we use on LLVM IR files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68458 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06 20:54:32 +00:00
Torok Edwin
59d5f83b32 fix (part of) memory leak on shutdown. See PR2975.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68457 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06 20:49:21 +00:00
Chris Lattner
63c3ffc16a clean up some html
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68456 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06 20:35:19 +00:00
Mike Stump
1c33d02371 Avoid -O3 on Darwin for now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68455 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06 19:58:11 +00:00
Ed Schouten
b5e0a96a8d Let the strcat optimizer return the pointer to the start of the buffer,
instead of the place where it started to perform the string copy.

- PR3661
- Patch by Benjamin Kramer!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68443 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06 13:06:48 +00:00
Sanjiv Gupta
cae1b628a7 Map stack based frameindices for spills to zero based indices that can be accessed based on an external symbol defining the location of temporary data for a function. For example: we have spill slots addressed as foo.tmp + 0, foo.tmp + 1 etc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68442 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06 10:54:50 +00:00
Bill Wendling
19a8dca186 Add character encoding declaration to fix verification warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68440 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-05 12:38:44 +00:00
Bill Wendling
78c8fcef7b Obsessively format this document.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68439 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-05 12:37:44 +00:00
Mikhail Glushenkov
4e9ca339b5 Add segment flag bits to ELF.h.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68438 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-05 09:07:08 +00:00
Bill Wendling
e6b487931c Add character encoding declaration.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68433 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-05 00:44:06 +00:00
Bill Wendling
e9e6fd9155 Fix validation error.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68432 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-05 00:43:04 +00:00
Bill Wendling
4a2bca8bc3 A lot of formatting changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68431 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-05 00:41:19 +00:00
Oscar Fuentes
34fc51710a CMake: Added notes pointing to the LLVM CMake documentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68429 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-04 22:52:02 +00:00
Oscar Fuentes
9a0107db72 CMake: defines and uses macro add_llvm_definitions for keeping track
of compiler parameters explicitly added by the build
specification. This macro replaces the cmake built-in
`add_definitions'.

Detects glibc and defines _GNU_SOURCE accordingly.

Resolves bug 3882.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68428 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-04 22:41:07 +00:00
Bill Wendling
903bcc4a5a Fix some HTML validation errors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68427 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-04 22:36:02 +00:00
Bill Wendling
bb7425fafb General clean-up of the bitcode format documentation. Having the paragraphs
formatted the same, putting words in <tt> tags, adding &mdash;s, etc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68426 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-04 22:27:03 +00:00
Nick Lewycky
cfdd807cfa Try SSE2?
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68423 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-04 10:24:24 +00:00
Nick Lewycky
e032590f58 CloneModule stores the BasicBlock mapping in ValueMap. There's no need to
recompute it. This fixes a O(n^2) in number of blocks when reducing a crash.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68422 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-04 09:39:23 +00:00
Nick Lewycky
5a30f4f84a Remove bogus include.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68421 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-04 07:42:46 +00:00
Nick Lewycky
21cc4460ef Add support for embedded metadata to LLVM. This introduces two new types of
Constant, MDString and MDNode which can only be used by globals with a name
that starts with "llvm." or as arguments to a function with the same naming
restriction.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68420 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-04 07:22:01 +00:00
Nick Lewycky
2cd1b777d7 Fix test on non-x86 platforms.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68419 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-04 07:20:43 +00:00
Stefanus Du Toit
b3e849cf15 Test commit access to LLVM with some minor narcissism.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68408 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-03 21:41:52 +00:00
Bob Wilson
eec4b2d730 Wrap some lines to fix indentation problems.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68405 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-03 21:08:42 +00:00
Bob Wilson
1b46a68015 Fix some comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68404 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-03 20:53:25 +00:00
Bill Wendling
138dd6df8b Duplicate entry.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68401 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-03 20:32:13 +00:00
Chris Lattner
41c90738e9 "This adds a getName() method to TargetRegisterClass, just like in TargetRegisterInfo.
This makes debugging register classes a bit easier."

Patch by Jakob Stoklund Olesen!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68400 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-03 20:25:41 +00:00
Chris Lattner
03dc1fe9ac "Add documentation about the fix for missing x86
target library in windows under the "Common problems" section."

Patch by Stefanus Du Toit!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68399 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-03 20:23:52 +00:00