Bill Wendling
5a5d0efc7f
Normalize how the 'namespace llvm {' is used in this file.
...
llvm-svn: 79750
2009-08-22 20:08:44 +00:00
Bill Wendling
afba8e204c
Convert DOUT to DEBUG(errs()...).
...
llvm-svn: 79749
2009-08-22 20:07:03 +00:00
Bill Wendling
d197f257a7
Convert DOUT to DEBUG(errs()...).
...
llvm-svn: 79748
2009-08-22 20:04:03 +00:00
Bill Wendling
7ce39eba34
Convert DOUT to DEBUG(errs()...).
...
llvm-svn: 79747
2009-08-22 20:03:00 +00:00
Devang Patel
c071d6c1b4
Record variable debug info at ISel time directly.
...
llvm-svn: 79742
2009-08-22 17:12:53 +00:00
Owen Anderson
51e0724ae8
Reapply r79708 with the appropriate fix for the case that still requires locking.
...
llvm-svn: 79731
2009-08-22 06:32:36 +00:00
Chris Lattner
b75d76e6d1
revert r79708 + r79711
...
llvm-svn: 79720
2009-08-22 04:07:34 +00:00
Eric Christopher
724f0fec19
Actually remove unused static. Previous commit removed trailing
...
whitespace.
llvm-svn: 79711
2009-08-22 00:41:47 +00:00
Eric Christopher
6da03d3055
Remove unused static.
...
llvm-svn: 79710
2009-08-22 00:40:45 +00:00
Owen Anderson
2a5b6c38b8
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
Bill Wendling
50e8e856f2
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
Bill Wendling
ee0f476fd4
Attempt to comment this code more.
...
llvm-svn: 79567
2009-08-20 22:02:24 +00:00
Daniel Dunbar
638e57db6e
Suppress build warning in -Asserts
...
llvm-svn: 79564
2009-08-20 20:01:34 +00:00
Jim Grosbach
0929242f26
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
David Greene
0658dce9a4
Add missing forward declaration.
...
llvm-svn: 79481
2009-08-19 22:19:44 +00:00
David Greene
a648747919
Add missing includes.
...
llvm-svn: 79480
2009-08-19 22:16:11 +00:00
David Greene
247bd82474
Add missing includes.
...
llvm-svn: 79479
2009-08-19 22:08:26 +00:00
David Greene
e79dd523ab
Add missing includes.
...
llvm-svn: 79478
2009-08-19 22:05:21 +00:00
David Greene
270a5f3e14
Add missing includes.
...
llvm-svn: 79476
2009-08-19 22:02:07 +00:00
David Greene
8dfc73dbbf
Add missing includes.
...
llvm-svn: 79475
2009-08-19 21:59:18 +00:00
David Greene
1fff843647
Add missing includes.
...
llvm-svn: 79474
2009-08-19 21:55:33 +00:00
David Greene
1df248be05
Add missing includes.
...
llvm-svn: 79473
2009-08-19 21:52:55 +00:00
Daniel Dunbar
2cf5eb67b4
Switch to SmallString::str from SmallString::c_str, and remove
...
SmallString::c_str.
llvm-svn: 79456
2009-08-19 20:07:03 +00:00
Dan Gohman
eb6fbd7fd1
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
David Goodwin
9a605efb84
Use the schedule itinerary operand use/def cycle information to adjust dependence edge latency for post-RA scheduling.
...
llvm-svn: 79425
2009-08-19 16:08:58 +00:00
Eli Friedman
914b41055a
PR4737: Fix a nasty bug in load narrowing with non-power-of-two types.
...
llvm-svn: 79415
2009-08-19 08:46:10 +00:00
Chris Lattner
57b873fda0
switch asmprinter to emit alignments through OutStreamer.
...
llvm-svn: 79406
2009-08-19 06:12:02 +00:00
Chris Lattner
9cbc9c2d13
eliminate AsmPrinter::SwitchToSection and just have clients
...
talk to the MCStreamer directly instead.
llvm-svn: 79405
2009-08-19 05:49:37 +00:00
Lang Hames
c26fb5727a
Added an option to have the PBQP allocator attempt coalescing during allocation.
...
llvm-svn: 79397
2009-08-19 01:36:14 +00:00
Dan Gohman
1526c115c0
Be tidy and use a break to exit from a switch block rather than
...
just falling through the end.
llvm-svn: 79383
2009-08-18 23:52:48 +00:00
Dan Gohman
56c2c54a37
Legalize the shift amount operand of SRL_PARTS, SHL_PARTS, and
...
SRA_PARTS, as is done for SRL, SHL, and SRA.
llvm-svn: 79380
2009-08-18 23:36:17 +00:00
Lang Hames
0e2ecec9f9
Changes DOUT references in the PBQP allocator to use DEBUG(errs() ...)
...
llvm-svn: 79378
2009-08-18 23:34:50 +00:00
Jakob Stoklund Olesen
9496240bbf
Simplify RegScavenger::FindUnusedReg.
...
- Drop the Candidates argument and fix all callers. Now that RegScavenger
tracks available registers accurately, there is no need to restict the
search.
- Make sure that no aliases of the found register are in use. This was a potential bug.
llvm-svn: 79369
2009-08-18 21:14:54 +00:00
David Greene
4347d5d424
Make various changes suggested by Chris.
...
llvm-svn: 79358
2009-08-18 19:22:55 +00:00
Chris Lattner
17c3a9cf99
fix COFF targets (mingw/cygwin) to provide ehframe and LSDA sections
...
llvm-svn: 79346
2009-08-18 16:56:17 +00:00
Dan Gohman
5022dd9cc9
Make tail merging handle blocks with repeated predecessors correctly, and
...
remove RemoveDuplicateSuccessor, as it is no longer necessary, and because
it breaks assumptions made in
MachineBasicBlock::isOnlyReachableByFallthrough.
Convert test/CodeGen/X86/omit-label.ll to FileCheck and add a testcase
for PR4732.
test/CodeGen/Thumb2/thumb2-ifcvt2.ll sees a diff with this commit due to
it being bugpoint-reduced to the point where it doesn't matter what the
condition for the branch is.
Add some more interesting code to
test/CodeGen/X86/2009-08-06-branchfolder-crash.ll, which is the testcase
that originally motivated the RemoveDuplicateSuccessor code, to help
verify that the original problem isn't being re-broken.
llvm-svn: 79338
2009-08-18 15:18:18 +00:00
Chris Lattner
b82fc63e02
Make AsmStreamer maintain a notion of the current section, pushing it up from the
...
MCAsmStreamer. Based on this, eliminate the current section from AsmPrinter.
While I'm at it, clean up the last of the horrible "switch to null section" stuff
and add an assert. This change is in preparation for completely eliminating
asmprinter::switchtosection.
llvm-svn: 79324
2009-08-18 06:15:16 +00:00
Chris Lattner
7a382434b5
add a horrible hack to the dwarf printer. It looks like mingw is not specifying
...
an EHFrame section, so we just emit ehframe data into a random section.
This is clearly bad.
llvm-svn: 79323
2009-08-18 06:13:03 +00:00
Chris Lattner
4efe44f456
fix another bozo bug
...
llvm-svn: 79313
2009-08-18 04:34:36 +00:00
Chris Lattner
64ac9ab553
fix accidentally inverted conditional and add comment.
...
llvm-svn: 79312
2009-08-18 04:33:15 +00:00
Chris Lattner
6270a4cc48
turn this conditional into something humans might actually
...
be able to understand ;-)
llvm-svn: 79311
2009-08-18 04:30:35 +00:00
Jim Grosbach
5883594589
cleanups per review. Mostly cosmetic, plus use SmallVector in place of std::vector.
...
llvm-svn: 79287
2009-08-17 21:40:03 +00:00
Jim Grosbach
5d064eeb2a
Remove a bit more cruft from the sjlj moving to a backend pass.
...
llvm-svn: 79272
2009-08-17 20:25:04 +00:00
Benjamin Kramer
452962eec7
Update CMakeLists.
...
llvm-svn: 79264
2009-08-17 18:47:11 +00:00
Daniel Dunbar
14357fdab5
Fix build warning.
...
llvm-svn: 79262
2009-08-17 18:41:42 +00:00
Jim Grosbach
4643e96d36
Move the sjlj exception handling conversions to a back-end pass where they
...
more properly belong. This allows removing the front-end conditionalized
SJLJ code, and cleans up the generated IR considerably. All of the
infrastructure code (calling _Unwind_SjLj_Register/Unregister, etc) is
added by the SjLjEHPrepare pass.
llvm-svn: 79250
2009-08-17 16:41:22 +00:00
David Goodwin
d65007a4a3
Extend the instruction itinerary model to include the ability to indicate the def and use cycle for each operand. This additional information is optional, so existing itineraries do not need to be changed.
...
llvm-svn: 79247
2009-08-17 16:02:57 +00:00
Chris Lattner
0ed3ef52af
the MinPad argument to PadToColumn only really makes sense to be 1,
...
just remove the argument and replace it with 1.
llvm-svn: 79246
2009-08-17 15:48:08 +00:00
Chris Lattner
fc68e5368b
change AsmPrinter to switch sections using AsmStreamer instead of
...
doing it directly. This requires const'izing a bunch of stuff that
took sections, but this seems like the right semantic thing to do:
emitting a label to a section shouldn't mutate the MCSection object
itself, for example.
llvm-svn: 79227
2009-08-17 05:49:08 +00:00
Chris Lattner
69a19050c0
give MCAsmStreamer a TargetAsmInfo.
...
llvm-svn: 79222
2009-08-17 04:23:44 +00:00