Edward O'Callaghan
a16e4b7380
Note down a few bits and bobs off the top of my head for ReleaseNotes-2.6.html
...
llvm-svn: 79715
2009-08-22 02:17:22 +00:00
Jim Grosbach
8a2cfcba0c
Add basic information about SJLJ EH
...
llvm-svn: 79714
2009-08-22 01:42:39 +00:00
Chris Lattner
f09250f1b1
rename test, make more specific.
...
llvm-svn: 79712
2009-08-22 00:44:24 +00:00
Eric Christopher
677c2287da
Actually remove unused static. Previous commit removed trailing
...
whitespace.
llvm-svn: 79711
2009-08-22 00:41:47 +00:00
Eric Christopher
dfda92b76e
Remove unused static.
...
llvm-svn: 79710
2009-08-22 00:40:45 +00:00
Owen Anderson
8e2456c254
Ease contention on this lock by noticing that all writes to the VTs array will
...
be of (dynamically) constant values, so races on it are immaterial. We just need
to ensure that at least one write has completed before return the pointer into it.
With this change, parllc exhibits essentially no overhead on 403.gcc.
llvm-svn: 79708
2009-08-22 00:29:12 +00:00
Anton Korobeynikov
48e4a6c739
Add missing RUN line
...
llvm-svn: 79707
2009-08-22 00:28:50 +00:00
Anton Korobeynikov
5f47ecb918
Reduce the test
...
llvm-svn: 79703
2009-08-22 00:18:11 +00:00
Bob Wilson
616335f6c1
Use CHECK-NEXT to make sure we're only getting one copy of each shuffle
...
instruction.
llvm-svn: 79702
2009-08-22 00:13:23 +00:00
Eric Christopher
c8f625b1eb
Make unit-at-a-time on by default to match the behavior of llvm-gcc.
...
llvm-svn: 79698
2009-08-21 23:30:30 +00:00
Daniel Dunbar
67dfb1de23
llvm-mc: Improve handling of implicit alignment for magic section directives
...
(e.g., .objc_message_refs).
- Just emit a .align when we see the directive; this isn't exactly what 'as'
does but in practice it should be ok, at least for now. See FIXME.
llvm-svn: 79697
2009-08-21 23:30:15 +00:00
Eric Christopher
e64061f675
Kill trailing whitespace.
...
llvm-svn: 79696
2009-08-21 23:29:40 +00:00
Chris Lattner
a7668ff636
Revert r79563
...
llvm-svn: 79691
2009-08-21 23:12:47 +00:00
Chris Lattner
773416e062
revert r79562 + r79563
...
llvm-svn: 79690
2009-08-21 23:12:15 +00:00
Daniel Dunbar
c906d17973
Make MSVC happy.
...
llvm-svn: 79689
2009-08-21 23:11:36 +00:00
Anton Korobeynikov
876955cbb0
Fix typo.
...
llvm-svn: 79688
2009-08-21 23:09:47 +00:00
Chris Lattner
f407dbbb1a
revert r79631
...
llvm-svn: 79686
2009-08-21 23:08:45 +00:00
Chris Lattner
6af22f02ef
revert 79631
...
llvm-svn: 79685
2009-08-21 23:08:09 +00:00
Daniel Dunbar
b1068e4fe3
llvm-mc/Mach-O: Support .o emission for .org and .align.
...
llvm-svn: 79684
2009-08-21 23:07:38 +00:00
Daniel Dunbar
4abcccb965
llvm-mc: In a .fill directive, still honor .align even if invalid maximum bytes
...
count is given (this matches 'as').
llvm-svn: 79683
2009-08-21 23:01:53 +00:00
Anton Korobeynikov
13e8c7ef20
Implement APInt <-> APFloat conversion for IEEE 128-bit floats.
...
This fixes PR2555
llvm-svn: 79677
2009-08-21 22:10:30 +00:00
Bob Wilson
ceffeb6abd
Rename ARM "lane_cst" operands to "nohash_imm" since they are used for
...
several things other than Neon vector lane numbers. For inline assembly
operands with a "c" print code, check that they really are immediates.
llvm-svn: 79676
2009-08-21 21:58:55 +00:00
Reid Kleckner
48ca915be9
Fix a bug where the DWARF emitter in the JIT was not initializing alignment
...
bytes. libgcc doesn't seem to mind, but if you pass this DWARF to GDB, it
doesn't like it.
Also make the JIT memory manager to initialize it's memory to garbage in debug
mode, so that it's easier to find bugs like these in the future.
llvm-svn: 79674
2009-08-21 21:03:57 +00:00
Bob Wilson
a70623102e
Match VTRN, VZIP, and VUZP shuffles. Restore the tests for these operations,
...
now using shuffles instead of intrinsics.
llvm-svn: 79673
2009-08-21 20:54:19 +00:00
Anton Korobeynikov
f31a44ec01
Add fcopysign instructions
...
llvm-svn: 79664
2009-08-21 20:02:37 +00:00
Owen Anderson
2dd877d12a
Try again at privatizing the layout info map, with a rewritten patch.
...
This preserves the existing behavior much more closely than my previous attempt.
llvm-svn: 79663
2009-08-21 19:59:12 +00:00
Anton Korobeynikov
47398930e4
Expand few nodes until someone will be crazy enough to implement them natively :)
...
llvm-svn: 79659
2009-08-21 18:52:42 +00:00
Anton Korobeynikov
cb7444342b
Typo :(
...
llvm-svn: 79657
2009-08-21 18:41:02 +00:00
Anton Korobeynikov
81be4b345a
Correct instruction names for subtract-with-borrow
...
llvm-svn: 79656
2009-08-21 18:37:28 +00:00
Daniel Dunbar
4ef7fb9530
llvm-mc/Mach-O: Support byte and fill value emission.
...
llvm-svn: 79652
2009-08-21 18:29:01 +00:00
Dan Gohman
c0b967dfb4
Don't assume that the operand of an inttoptr is an pointer-sized integer.
...
llvm-svn: 79651
2009-08-21 18:27:26 +00:00
Bill Wendling
dff54eff8e
Fix typo. Should check both values of RangeUse for 0. Patch by Marius Wachtler.
...
llvm-svn: 79649
2009-08-21 18:16:06 +00:00
Anton Korobeynikov
a39f96c6ed
Handle 'r' inline asm constraint
...
llvm-svn: 79648
2009-08-21 18:15:41 +00:00
Bob Wilson
d1077fbab0
Fix a comment.
...
llvm-svn: 79643
2009-08-21 17:41:48 +00:00
Duncan Sands
08b437d600
Fix a problem noticed by gcc-4.4:
...
warning: comparison is always true due to limited range of data type.
llvm-svn: 79642
2009-08-21 17:16:10 +00:00
Dan Gohman
23e62c532c
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.
llvm-svn: 79639
2009-08-21 16:52:54 +00:00
Bob Wilson
f73af72d30
Add some tests for vext.16 and vext.32.
...
llvm-svn: 79638
2009-08-21 16:35:24 +00:00
Daniel Dunbar
2f0e8f55f5
Fix -Asserts warning.
...
llvm-svn: 79636
2009-08-21 16:17:36 +00:00
Daniel Dunbar
8e5edd81bb
llvm-mc: Accept .fill size of 8.
...
llvm-svn: 79635
2009-08-21 15:43:35 +00:00
Anton Korobeynikov
7950510b29
Fix a typo
...
llvm-svn: 79634
2009-08-21 15:41:56 +00:00
Andreas Neustifter
3fac9a4fc5
Removed profiling test, lli not available on all platforms.
...
llvm-svn: 79633
2009-08-21 15:27:35 +00:00
Sanjiv Gupta
9ae3bcb79e
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.
llvm-svn: 79631
2009-08-21 15:22:33 +00:00
Benjamin Kramer
37fd02c5a1
Fix build on platforms where stdint.h is not implicitly included in the standard headers.
...
llvm-svn: 79629
2009-08-21 13:59:49 +00:00
Anton Korobeynikov
eaaca496c5
More cpp backend fixes. Now for FP stuff.
...
llvm-svn: 79626
2009-08-21 12:50:54 +00:00
Anton Korobeynikov
232b19c3d5
Fix some typos and use type-based isel for VZIP/VUZP/VTRN
...
llvm-svn: 79625
2009-08-21 12:41:42 +00:00
Anton Korobeynikov
9a232f46a8
Add lowering of ARM 4-element shuffles to multiple instructios via perfectshuffle-generated table.
...
llvm-svn: 79624
2009-08-21 12:41:24 +00:00
Anton Korobeynikov
84e24388cd
Add simple cost model to perfect shuffle. Currently we're doing just greedy search for cost instead of (proper) dynamic programming approach.
...
llvm-svn: 79623
2009-08-21 12:41:03 +00:00
Anton Korobeynikov
ce3ff1be8a
Add nodes & dummy matchers for some v{zip,uzp,trn} instructions
...
llvm-svn: 79622
2009-08-21 12:40:50 +00:00
Anton Korobeynikov
e3046618de
Expand EXTRACT_SUBVECTOR
...
llvm-svn: 79621
2009-08-21 12:40:35 +00:00
Anton Korobeynikov
38f284f2ae
Provide vext.{16,32}
...
llvm-svn: 79620
2009-08-21 12:40:21 +00:00
Anton Korobeynikov
c32e99e3ed
Use masks not nodes for vector shuffle predicates. Provide set of 'legal' masks, so legalizer won't infinite cycle
...
llvm-svn: 79619
2009-08-21 12:40:07 +00:00
Anton Korobeynikov
b539e06f28
Whitespace cleanup
...
llvm-svn: 79618
2009-08-21 12:39:38 +00:00
Benjamin Kramer
c20529945a
Update CMakeLists.
...
llvm-svn: 79617
2009-08-21 11:28:56 +00:00
Richard Pennington
9e0c4f50ec
bug 4530: Make debug information static to it is preservered during bitcode linking.
...
llvm-svn: 79616
2009-08-21 11:10:31 +00:00
Andreas Neustifter
f715778de9
Added tests for Profiling Infrastructure.
...
llvm-svn: 79615
2009-08-21 09:36:28 +00:00
Bill Wendling
2315a68054
Make for 32-bit only.
...
llvm-svn: 79614
2009-08-21 09:29:26 +00:00
Daniel Dunbar
3016db39dd
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.
llvm-svn: 79612
2009-08-21 09:11:24 +00:00
Daniel Dunbar
9df5f33818
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.
llvm-svn: 79611
2009-08-21 08:34:18 +00:00
Bill Wendling
84d3389d7d
Probably should emit bitcode instead of text.
...
llvm-svn: 79607
2009-08-21 08:02:19 +00:00
Daniel Dunbar
ad8b653f93
Don't install llvm-mc by default.
...
llvm-svn: 79604
2009-08-21 07:28:33 +00:00
Bill Wendling
64965aafe7
Remove #include <iostream>.
...
llvm-svn: 79603
2009-08-21 06:52:44 +00:00
Erick Tryzelaar
6096409238
Clean up the APInt function getDigit.
...
llvm-svn: 79602
2009-08-21 06:48:37 +00:00
Bill Wendling
ef793ccbdc
Correct for recent assert change.
...
llvm-svn: 79601
2009-08-21 06:35:41 +00:00
Bill Wendling
19e4d6b33c
Testcase for r79597.
...
llvm-svn: 79598
2009-08-21 06:12:30 +00:00
Eric Christopher
43a1decc8c
Update error messages for '+'. Fix grammar and make the two
...
negative checks resemble each other.
llvm-svn: 79595
2009-08-21 04:10:31 +00:00
Eric Christopher
820256bc99
Fix trailing whitespace and 80-col violation.
...
llvm-svn: 79594
2009-08-21 04:06:45 +00:00
Erick Tryzelaar
dadb1571b7
Fix bug with APInt::getBitsNeeded with for base 10 numbers 0-9.
...
llvm-svn: 79593
2009-08-21 03:15:28 +00:00
Erick Tryzelaar
1264bcb4de
Allow '+' to appear in APInt strings, and add more unit tests.
...
llvm-svn: 79592
2009-08-21 03:15:14 +00:00
Bob Wilson
51c7aa04ec
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.
llvm-svn: 79579
2009-08-21 00:01:42 +00:00
Owen Anderson
baa922cf16
Re-revert r79555. Apparently it's not just buildbot weirdness.
...
llvm-svn: 79578
2009-08-20 23:51:44 +00:00
Erick Tryzelaar
da666c801c
Add support for including '+' in APFloat strings, more asserts,
...
and many new unit tests.
llvm-svn: 79574
2009-08-20 23:30:43 +00:00
Owen Anderson
9ca906e69d
Reapply r79555 for testing. Daniel's trying to work out some buildbot weirdnesss.
...
llvm-svn: 79572
2009-08-20 23:14:20 +00:00
Dale Johannesen
fa2b97e61a
Use FileCheck even though this means testing for something
...
that has nothing to do with the point of the test, per Chris.
llvm-svn: 79569
2009-08-20 22:12:08 +00:00
Bill Wendling
e3836f99bf
--- 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.
llvm-svn: 79568
2009-08-20 22:04:42 +00:00
Bill Wendling
0e749fe36b
Attempt to comment this code more.
...
llvm-svn: 79567
2009-08-20 22:02:24 +00:00
Daniel Dunbar
e7e865cf0b
Suppress build warning in -Asserts
...
llvm-svn: 79564
2009-08-20 20:01:34 +00:00
Sanjiv Gupta
a874d82492
part of the previous commit for PIC16 ISR implementation.
...
llvm-svn: 79563
2009-08-20 19:34:18 +00:00
Sanjiv Gupta
686e9f55dc
Implement support for ISRs.
...
Clone functions that are shared between the Main thread and Interrupt thread.
CallSites are changed in AsmPrinter currently. A better solution would have been to modify the legalizer (SoftenFloat) to allow targets to change the name of libcalls for float operations. But that currently breaks other targets.
Also, cloing of automatic variables is done AsmPrinter, a better approach would
be to use the ValueMap in CloneFunction itself.
llvm-svn: 79562
2009-08-20 19:28:24 +00:00
Owen Anderson
c1a3a471c4
Reduce contention on the Attributes lock by using atomic operations for reference counting rather than locking.
...
llvm-svn: 79560
2009-08-20 19:03:20 +00:00
Owen Anderson
d2354b8cc5
Make the StructType->StructLayout table private to TargetData, allowing us to avoid locking on it.
...
llvm-svn: 79555
2009-08-20 18:26:03 +00:00
Sean Callanan
46bb77f2cf
Fixed PCMPESTRM128 to have opcode 0x60 instead of 0x62, as specified by the
...
Intel documentation.
llvm-svn: 79554
2009-08-20 18:24:27 +00:00
Dan Gohman
05046085b6
Fix an x86 code size regression: prefer RIP-relative addressing
...
over absolute addressing even in non-PIC mode (unless the address
has an index or something else incompatible), because it has a
smaller encoding.
llvm-svn: 79553
2009-08-20 18:23:44 +00:00
Dan Gohman
e392e6236d
Add a comment explaining why llvm_unreachable_internal doesn't call
...
the ErrorHandler callback.
llvm-svn: 79541
2009-08-20 17:15:19 +00:00
Daniel Dunbar
bf5998edfb
Fix two APFloat bugs in converting hexadecimal constants.
...
llvm-svn: 79540
2009-08-20 17:12:33 +00:00
Dan Gohman
16f5415f5b
Rename hasNoUnsignedOverflow and hasNoSignedOverflow to hasNoUnsignedWrap
...
and hasNoSignedWrap, for consistency with the nuw and nsw properties.
llvm-svn: 79539
2009-08-20 17:11:38 +00:00
Dan Gohman
2de532c132
Clarify a few things in the inbounds description.
...
Describing inbounds in terms of infinitely precise arithmetic prohibits
the assumption address-space-sized integer arithmetic will wrap, with
a wrapped-around value landing within the same object.
llvm-svn: 79538
2009-08-20 17:08:17 +00:00
Misha Brukman
5851edb13e
Fixed header comment.
...
llvm-svn: 79536
2009-08-20 17:01:14 +00:00
Evan Cheng
01de985ae6
Fix an obvious copy-n-paste bug.
...
llvm-svn: 79535
2009-08-20 17:01:04 +00:00
Dale Johannesen
d16abc09c4
Use FileCheck for the test run where it's appropriate.
...
llvm-svn: 79534
2009-08-20 16:58:04 +00:00
Dan Gohman
8a8ad7d8e8
Various comment and whitespace cleanups.
...
llvm-svn: 79533
2009-08-20 16:42:55 +00:00
Dan Gohman
f91a992c30
Update and fix some comments.
...
llvm-svn: 79532
2009-08-20 16:27:10 +00:00
Benjamin Kramer
33599115ab
Add myself to the blame list.
...
llvm-svn: 79531
2009-08-20 15:20:15 +00:00
Sandeep Patel
ab7a751889
Correct ARM v7-A architecture name spelling and add note about hard float.
...
llvm-svn: 79530
2009-08-20 15:01:16 +00:00
Daniel Dunbar
4d28366342
Don't try to build .bc version of libprofile if LLVMGCC isn't available.
...
llvm-svn: 79514
2009-08-20 05:12:55 +00:00
Erick Tryzelaar
bef7f98896
Rename FirstExtendedValueType to INVALID_SIMPLE_VALUE_TYPE
...
as that's a bit more descriptive of what we're testing for.
llvm-svn: 79513
2009-08-20 05:09:43 +00:00
Daniel Dunbar
c2fdebe8af
Remove cruft for installing runtime/ libraries directly into the LLVMGCCDIR;
...
that is totally bogus.
llvm-svn: 79512
2009-08-20 05:02:41 +00:00
Chris Lattner
f6bb2a79f2
fix this back, thanks Eli
...
llvm-svn: 79508
2009-08-20 03:10:14 +00:00
Dan Gohman
61fcf3d8fe
Add some comments clarifying what appear to be the intent of various
...
error handling mechanisms. Please correct these if I've misunderstood
something.
llvm-svn: 79505
2009-08-20 01:46:24 +00:00
Dan Gohman
30584ea4a4
Reword a few comments for AnalyzeBranch and InsertBranch, and fix
...
a few typos.
llvm-svn: 79503
2009-08-20 01:33:25 +00:00
Jim Grosbach
8b4d51af58
Check for shared landing pads when assigning call site values. Invokes which
...
share a landing pad should also use the same call site value.
llvm-svn: 79501
2009-08-20 01:03:48 +00:00
Chris Lattner
2689c3be01
minor grammar tweak
...
llvm-svn: 79498
2009-08-20 00:29:24 +00:00
Dale Johannesen
aec3830ce7
Add an extra line to conform with preferred style.
...
llvm-svn: 79495
2009-08-19 23:44:01 +00:00
Reid Kleckner
5c51639e3e
Modify an assert to avoid what looks like a GCC 4.2.4 signed-ness bug.
...
llvm-svn: 79494
2009-08-19 23:39:59 +00:00
Dan Gohman
7167f42769
Fix a few places to check if TargetData is available before using it.
...
llvm-svn: 79493
2009-08-19 23:38:22 +00:00
Daniel Dunbar
cb13b48969
Add a fast path for setName("") on an unnamed value.
...
llvm-svn: 79492
2009-08-19 23:37:23 +00:00
Dan Gohman
463d3407e2
Loosen up the regex for this test so that it doesn't implicitly
...
depend on TargetData information.
llvm-svn: 79491
2009-08-19 23:19:36 +00:00
Dan Gohman
6e32e5cf0c
Add targetdata strings to these tests, since SimplifyLibCalls uses
...
TargetData to find the pointer size.
llvm-svn: 79490
2009-08-19 23:18:49 +00:00
Tanya Lattner
da94af763b
Update the release process some more. Lots of good details now.
...
llvm-svn: 79488
2009-08-19 23:07:37 +00:00
David Greene
62b666f0b8
Remove an unnecessary include. Now we won't have circular include
...
problems later on.
llvm-svn: 79487
2009-08-19 23:00:07 +00:00
Owen Anderson
d6f7af652e
AttrListPtr operations need to be atomic.
...
llvm-svn: 79486
2009-08-19 22:58:34 +00:00
Dan Gohman
c59ba42b0f
Fix a bug in the over-index constant folding. When over-indexing an
...
array member of a struct, it's possible to land in an arbitrary position
inside that struct, such that attempting to find further getelementptr
indices will fail. In such cases, folding cannot be done.
llvm-svn: 79485
2009-08-19 22:46:59 +00:00
Dale Johannesen
1d764f61ef
Handle 'a' modifier in X86 asms. PR 4742.
...
llvm-svn: 79484
2009-08-19 22:44:41 +00:00
Reid Kleckner
d72b091840
Fixed error in CPPBackend from a contextification API change.
...
llvm-svn: 79483
2009-08-19 22:38:37 +00:00
Daniel Dunbar
ca66226c31
Switch IRBuilder to using Twine references for names.
...
llvm-svn: 79482
2009-08-19 22:34:21 +00:00
David Greene
15aafbbfa5
Add missing forward declaration.
...
llvm-svn: 79481
2009-08-19 22:19:44 +00:00
David Greene
8230a93ae2
Add missing includes.
...
llvm-svn: 79480
2009-08-19 22:16:11 +00:00
David Greene
2806a1e528
Add missing includes.
...
llvm-svn: 79479
2009-08-19 22:08:26 +00:00
David Greene
ba540eb492
Add missing includes.
...
llvm-svn: 79478
2009-08-19 22:05:21 +00:00
Nicolas Geoffray
43cce2294c
Add a REQUIRES_FRAME_POINTER option to disable the frame pointer
...
elimination optimization on the LLVM code base.
llvm-svn: 79477
2009-08-19 22:04:44 +00:00
David Greene
40a0fbc1d0
Add missing includes.
...
llvm-svn: 79476
2009-08-19 22:02:07 +00:00
David Greene
8704780390
Add missing includes.
...
llvm-svn: 79475
2009-08-19 21:59:18 +00:00
David Greene
a5be1b174b
Add missing includes.
...
llvm-svn: 79474
2009-08-19 21:55:33 +00:00
David Greene
829b3e8b14
Add missing includes.
...
llvm-svn: 79473
2009-08-19 21:52:55 +00:00
Owen Anderson
a83e868078
Get rid of a helgrind warning. If this is _actually_ a performance problem,
...
we can find a way to cache the answer that isn't racy.
llvm-svn: 79472
2009-08-19 21:48:34 +00:00
David Greene
ddf20023d3
Add missing includes.
...
llvm-svn: 79469
2009-08-19 21:22:18 +00:00
David Greene
23a6b3b2d2
Add missing includes.
...
llvm-svn: 79468
2009-08-19 21:19:41 +00:00
David Greene
7b1a6671f8
Add missing includes.
...
llvm-svn: 79467
2009-08-19 21:17:28 +00:00
Daniel Dunbar
0e04394d97
Build runtime libraries by default.
...
llvm-svn: 79465
2009-08-19 21:09:45 +00:00
David Greene
d1a08de1f6
Add missing header.
...
llvm-svn: 79463
2009-08-19 20:52:54 +00:00
Eli Friedman
28c7bbf515
Add triple parsing support for TCE.
...
llvm-svn: 79461
2009-08-19 20:46:03 +00:00
Dan Gohman
081e2f955a
Unbreak GetBufferSize() on uninitialized streams. This fixes a problem
...
that led to errs() getting made buffered.
llvm-svn: 79458
2009-08-19 20:27:57 +00:00
Daniel Dunbar
8b0b11582d
Switch to SmallString::str from SmallString::c_str, and remove
...
SmallString::c_str.
llvm-svn: 79456
2009-08-19 20:07:03 +00:00
Daniel Dunbar
faea97193c
Add min and max tests.
...
llvm-svn: 79454
2009-08-19 19:58:19 +00:00
Daniel Dunbar
03d4b9eac4
Add SmallString::str (which returns a StringRef); this is more efficient than
...
c_str().
llvm-svn: 79453
2009-08-19 19:57:55 +00:00
Benjamin Kramer
902ccf22b4
Remove SmallString::append_*int* unit tests.
...
llvm-svn: 79451
2009-08-19 19:41:05 +00:00
Daniel Dunbar
339d0cbdd1
Remove SmallString::append_*int* methods; how many copies of int -> str
...
conversion code do we really need?
- S.append_uint(N) can be replaced with 'raw_svector_ostream(S) << N' which is
somewhat slower due to the extra set up cost, but still plenty fast
(especially if the svector set up cost can be amortized).
llvm-svn: 79450
2009-08-19 19:28:18 +00:00
Daniel Dunbar
948f82b8e4
Change ValueSymbolTable to use raw_svector_ostream for string concatenation.
...
llvm-svn: 79449
2009-08-19 19:22:52 +00:00
Bill Wendling
6c528bc7ae
Make this test platform neutral.
...
llvm-svn: 79447
2009-08-19 18:51:45 +00:00
Daniel Dunbar
e813cbaa21
Change raw_svector_ostream to reserve the input buffer if necessary, Ted was
...
right.
- This class turns out to be much more convenient to use if we do this; clients
can make sure the buffer is always big enough if they care (since our current
idiom tends to be to use a SmallString<256> for the input to this we should
generally be avoiding an unnecessary malloc).
Also, add a convenience raw_svector_ostream::str method which flushes the buffer
and returns a StringRef for the vector contents.
llvm-svn: 79446
2009-08-19 18:40:58 +00:00
Daniel Dunbar
45e5670ede
Fix typo
...
llvm-svn: 79445
2009-08-19 18:35:54 +00:00
Dan Gohman
de255fc8f6
Remove temporary testing code.
...
llvm-svn: 79443
2009-08-19 18:27:08 +00:00
Dan Gohman
915302c605
Make SROA and PredicateSimplifier cope if TargetData is not
...
available. This is very conservative for now.
llvm-svn: 79442
2009-08-19 18:22:18 +00:00
Dan Gohman
5d5bc6d000
Use hasDefinitiveInitializer() instead of testing the same thing
...
by hand, and fix a few places that were using hasInitializer() that
appear to depend on the initializer value.
llvm-svn: 79441
2009-08-19 18:20:44 +00:00
Dan Gohman
81ce842ecf
Canonicalize indices in a constantexpr GEP. If Indices exceed the
...
static extents of the static array type, it causes GlobalOpt and
other passes to be more conservative. This canonicalization also
allows the constant folder to add "inbounds" to GEPs.
llvm-svn: 79440
2009-08-19 18:18:36 +00:00
Dan Gohman
ac33a9061d
Add an x86 peep that narrows TEST instructions to forms that use
...
a smaller encoding. These kinds of patterns are very frequent in
sqlite3, for example.
llvm-svn: 79439
2009-08-19 18:16:17 +00:00
Daniel Dunbar
ea579e3d29
Switch Twine::str() to use toVector(), which is now efficient.
...
llvm-svn: 79437
2009-08-19 18:09:47 +00:00
David Goodwin
a7c2dfbca1
Update Cortex-A8 instruction itineraries for integer instructions.
...
llvm-svn: 79436
2009-08-19 18:00:44 +00:00
Owen Anderson
fe7bbc92e1
Add a first stab at describing LLVMContext.
...
llvm-svn: 79435
2009-08-19 17:58:52 +00:00
Daniel Dunbar
b090bf4626
Switch raw_svector_ostream to use the vector as the ostream buffer.
...
- This avoids unnecessary malloc/free overhead in the common case, and
unnecessary copying from the ostream buffer into the output vector.
llvm-svn: 79434
2009-08-19 17:54:29 +00:00
Daniel Dunbar
825e955e40
Add SmallVector::{capacity,set_size}.
...
- These allow clients to make use of the extra elements in the vector which
have already been allocated, without requiring them to be value initialized.
llvm-svn: 79433
2009-08-19 17:48:28 +00:00