Dale Johannesen [Wed, 24 Sep 2008 23:13:09 +0000 (23:13 +0000)]
Remove SelectionDag early allocation of registers
for earlyclobbers. Teach Local RA about earlyclobber,
and add some tests for it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56592
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:23:17 +0000 (22:23 +0000)]
Finally get rid of virtual inheritance in TAI
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56589
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:22:54 +0000 (22:22 +0000)]
Minor cleanup
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56588
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:22:27 +0000 (22:22 +0000)]
Get rid of virtual inheritance for ARM TAI
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56587
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:22:03 +0000 (22:22 +0000)]
Get rid of virtual inheritance for PPC TAI
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56586
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:21:39 +0000 (22:21 +0000)]
Use crazy template-based inheritance instead of virtual one.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56585
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:21:04 +0000 (22:21 +0000)]
Use helper
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56584
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:20:46 +0000 (22:20 +0000)]
SmallPtrSet will be better
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56583
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:20:27 +0000 (22:20 +0000)]
Get rid of ReadOnlySection duplicate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56582
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:19:13 +0000 (22:19 +0000)]
Use named sections, where they should be
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56581
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:18:54 +0000 (22:18 +0000)]
Get rid of now unused {Four,Eight,Sixteen}ByteConstantSection
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56580
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:17:59 +0000 (22:17 +0000)]
Use generic section-handling stuff to emit constant pool entries
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56579
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:17:27 +0000 (22:17 +0000)]
Cleanup
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56578
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:17:06 +0000 (22:17 +0000)]
Get rid of duplicate char*/Section* stuff for TLS sections
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56577
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:16:33 +0000 (22:16 +0000)]
Cleanup, no functionality change
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56576
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:16:16 +0000 (22:16 +0000)]
Get rid of duplicate char*/Section* DataSection
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56575
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:15:21 +0000 (22:15 +0000)]
Get rid of duplicate char*/Section* TextSection
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56574
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:14:23 +0000 (22:14 +0000)]
Move actual section printing stuff to AsmPrinter from TAI reducing heap traffic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56573
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:13:07 +0000 (22:13 +0000)]
Drop obsolete hook and change all usage to new interface
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56572
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:12:10 +0000 (22:12 +0000)]
Provide direct function to switch to Section
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56571
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:11:42 +0000 (22:11 +0000)]
SPU section handling is really huge mess. Replace remaining TAI calls for sections with explicit names in order not to block existing backends during section handling migration. SPU folks! Please consider using new section handling facility someday.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56570
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:11:26 +0000 (22:11 +0000)]
Remove dead code for PIC16 (preparation to switch to new section handling stuff)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56569
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 24 Sep 2008 22:03:04 +0000 (22:03 +0000)]
XMM6-XMM15 are callee-saved on Win64. Patch by Nicolas Capens!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56568
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Wed, 24 Sep 2008 21:30:38 +0000 (21:30 +0000)]
Fix off-by-one error when updating live intervals.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56567
91177308-0d34-0410-b5e6-
96231b3b80d8
Oscar Fuentes [Wed, 24 Sep 2008 19:27:54 +0000 (19:27 +0000)]
CMake: Disabled some warnings for MSVC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56565
91177308-0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Wed, 24 Sep 2008 17:23:28 +0000 (17:23 +0000)]
Add Attributes.cpp to the vcproj.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56561
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 24 Sep 2008 16:25:55 +0000 (16:25 +0000)]
Add DisableGVCompilation which forces the JIT to assert when it tries to allocate space for a GlobalVariable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56557
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 24 Sep 2008 10:25:02 +0000 (10:25 +0000)]
Reapplying r56550
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56553
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 24 Sep 2008 10:16:24 +0000 (10:16 +0000)]
Forgot this part with my last patch. Sorry about the breakage.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56552
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Wed, 24 Sep 2008 08:30:44 +0000 (08:30 +0000)]
Temporarily revert r56550 until missing commit can be added.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56551
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 24 Sep 2008 07:11:26 +0000 (07:11 +0000)]
Refactor the constant folding code into it's own function. And call it from both
the SelectionDAG and DAGCombiner code. The only functionality change is that now
the DAG combiner is performing the constant folding for these operations instead
of being a no-op.
This is *not* in response to a bug, so there isn't a testcase.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56550
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 24 Sep 2008 06:48:55 +0000 (06:48 +0000)]
Commit CodeGenPrepare.cpp changes which was accidentially left out of 56526.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56549
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Wed, 24 Sep 2008 05:32:41 +0000 (05:32 +0000)]
Fix fallout in CodeGenPrepare from 56526. Will likely need more work.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56546
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Wed, 24 Sep 2008 04:55:49 +0000 (04:55 +0000)]
Fix fallout from revision r56535.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56545
91177308-0d34-0410-b5e6-
96231b3b80d8
Oscar Fuentes [Wed, 24 Sep 2008 01:58:12 +0000 (01:58 +0000)]
CMake: Lists of source files updated. Removed bogus dependency from
lib/VMCore/CMakeLists.txt
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56541
91177308-0d34-0410-b5e6-
96231b3b80d8
Oscar Fuentes [Wed, 24 Sep 2008 01:54:03 +0000 (01:54 +0000)]
CMake: Removed unnecessary messages from msvc_llvm_config macro.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56540
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Wed, 24 Sep 2008 01:07:17 +0000 (01:07 +0000)]
Next round of earlyclobber handling. Approach the
RA problem by expanding the live interval of an
earlyclobber def back one slot. Remove
overlap-earlyclobber throughout. Remove
earlyclobber bits and their handling from
live internals.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56539
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 24 Sep 2008 00:55:02 +0000 (00:55 +0000)]
s/ParamAttrsWithIndex/FnAttributeWithIndex/g
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56535
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 24 Sep 2008 00:50:16 +0000 (00:50 +0000)]
Test fp not.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56534
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 24 Sep 2008 00:29:49 +0000 (00:29 +0000)]
s/ParamAttributeListImpl/AttributeListImpl/g
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56532
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 24 Sep 2008 00:27:38 +0000 (00:27 +0000)]
Refactor the logic for testing if an instruction is dead into a
separate method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56531
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 24 Sep 2008 00:07:08 +0000 (00:07 +0000)]
Set SetStore to false, to allow this pass to delete
dead loads.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56529
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 24 Sep 2008 00:06:15 +0000 (00:06 +0000)]
Add a method to MachineInstr for testing whether it makes
any volatile memory references.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56528
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 24 Sep 2008 00:06:15 +0000 (00:06 +0000)]
Put FN_NOTE_AlwaysInline and others in FnAttr namespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56527
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 24 Sep 2008 00:05:32 +0000 (00:05 +0000)]
Properly handle 'm' inline asm constraints. If a GV is being selected for the addressing mode, it requires the same logic for PIC relative addressing, etc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56526
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 23 Sep 2008 23:52:03 +0000 (23:52 +0000)]
Move FN_NOTE_AlwaysInline and other out of ParamAttrs namespace.
Do not check isDeclaration() in hasNote(). It is clients' responsibility.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56524
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 23 Sep 2008 23:32:15 +0000 (23:32 +0000)]
80 cols
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56521
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 23 Sep 2008 23:25:44 +0000 (23:25 +0000)]
s/ParameterAttributes/Attributes/g
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56520
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 23 Sep 2008 23:18:26 +0000 (23:18 +0000)]
Remove tabs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56515
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 23 Sep 2008 23:03:40 +0000 (23:03 +0000)]
s/ParameterAttributes/Attributes/g
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56513
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 23 Sep 2008 22:35:17 +0000 (22:35 +0000)]
Use parameter attribute store (soon to be renamed) for
Function Notes also. Function notes are stored at index ~0.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56511
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 23 Sep 2008 22:04:18 +0000 (22:04 +0000)]
Now that DeadMachineInstructionElim is basically working
correctly, it's not necessary to explicitly remove registers
from their use-def lists.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56509
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 23 Sep 2008 21:53:34 +0000 (21:53 +0000)]
Arrange for FastISel code to have access to the MachineModuleInfo
object. This will be needed to support debug info.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56508
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 23 Sep 2008 21:40:44 +0000 (21:40 +0000)]
Track local physical register liveness. This is not the most
efficient implementation possible, but it's pretty simple and
good enough for the time being.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56504
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 23 Sep 2008 21:18:31 +0000 (21:18 +0000)]
regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56502
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 23 Sep 2008 21:18:08 +0000 (21:18 +0000)]
allow inreg on the result of a function
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56501
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 23 Sep 2008 18:50:48 +0000 (18:50 +0000)]
Replace the LiveRegs SmallSet with a simple counter that keeps
track of the number of live registers, which is all the set was
being used for.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56498
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 23 Sep 2008 18:42:32 +0000 (18:42 +0000)]
Fix these enums' starting values to reflect the way that
instruction opcodes are now numbered. No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56497
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 23 Sep 2008 18:27:53 +0000 (18:27 +0000)]
Update the comment to reflect the new name.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56496
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 23 Sep 2008 18:26:47 +0000 (18:26 +0000)]
Delete an unused function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56495
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 23 Sep 2008 18:22:58 +0000 (18:22 +0000)]
Move the code for initializing the global base reg out of
X86ISelDAGToDAG.cpp and into X86InstrInfo.cpp. This will allow
it to be reused by FastISel.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56494
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Tue, 23 Sep 2008 12:47:39 +0000 (12:47 +0000)]
Rationalize the names of passes that print information:
-callgraph => print-callgraph
-callscc => print-callgraph-sccs
-cfgscc => print-cfg-sccs
-externalfnconstants => print-externalfnconstants
-print => print-function
-print-alias-sets (no change)
-print-callgraph => dot-callgraph
-print-cfg => dot-cfg
-print-cfg-only => dot-cfg-only
-print-dom-info (no change)
-printm => print-module
-printusedtypes => print-used-types
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56487
91177308-0d34-0410-b5e6-
96231b3b80d8
Matthijs Kooijman [Tue, 23 Sep 2008 08:54:41 +0000 (08:54 +0000)]
Fix indendation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56486
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Tue, 23 Sep 2008 04:37:10 +0000 (04:37 +0000)]
Add initial support for inserting last minute copies.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56485
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Sep 2008 23:57:37 +0000 (23:57 +0000)]
Support x86 specific inline asm modifier 'J'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56483
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Mon, 22 Sep 2008 23:28:18 +0000 (23:28 +0000)]
Remove silly semicolon.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56481
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 22 Sep 2008 22:40:08 +0000 (22:40 +0000)]
Fix the alignment of loads from constant pool entries when the
load address has an offset from the base of the constant pool
entry.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56479
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Mon, 22 Sep 2008 22:33:34 +0000 (22:33 +0000)]
Remove a compiler warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56478
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Mon, 22 Sep 2008 22:32:29 +0000 (22:32 +0000)]
Add hasNote() to check note associated with a function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56477
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Sep 2008 22:26:15 +0000 (22:26 +0000)]
Livestacks really does preserve everything.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56476
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Sep 2008 22:21:38 +0000 (22:21 +0000)]
Instead of setPreservesAll, just mark them preseving machine loop info and machine dominators.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56475
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Sep 2008 22:19:34 +0000 (22:19 +0000)]
Test case for fp logical instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56474
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 22 Sep 2008 21:58:58 +0000 (21:58 +0000)]
Significant improvements to the logic for merging live intervals. This code can't
just use LI::MergeValueAsValue, as its behavior in the presence of overlapping ranges
isn't what StrongPHIElimination wants.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56472
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Mon, 22 Sep 2008 21:57:32 +0000 (21:57 +0000)]
Make log, log2, log10, exp, exp2 use Expand by
default.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56471
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Sep 2008 20:58:04 +0000 (20:58 +0000)]
Mark several codegen passes as preserving all analysis.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56469
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Mon, 22 Sep 2008 20:51:30 +0000 (20:51 +0000)]
More refactoring. Yawn.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56468
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Mon, 22 Sep 2008 20:51:19 +0000 (20:51 +0000)]
Convert llvmc2 plugins to use llvm/Support/Registry.h machinery.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56467
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Mon, 22 Sep 2008 20:50:40 +0000 (20:50 +0000)]
Move llvmc2 header files under include/llvm/CompilerDriver
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56466
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Mon, 22 Sep 2008 20:49:34 +0000 (20:49 +0000)]
Plugin support for llvmc2 (a-la opt).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56465
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Mon, 22 Sep 2008 20:48:48 +0000 (20:48 +0000)]
Add a 'Debugging' section to the documentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56464
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Mon, 22 Sep 2008 20:48:22 +0000 (20:48 +0000)]
Make comments a little bit more clear.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56463
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Mon, 22 Sep 2008 20:47:46 +0000 (20:47 +0000)]
Get rid of GlobalLanguageMap. Global state is evil.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56462
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Mon, 22 Sep 2008 20:47:09 +0000 (20:47 +0000)]
Rename our version of ccc to ccc2
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56461
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Mon, 22 Sep 2008 20:46:44 +0000 (20:46 +0000)]
Fix some comments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56460
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Mon, 22 Sep 2008 20:46:19 +0000 (20:46 +0000)]
Add a (forward_as) option property
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56459
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Mon, 22 Sep 2008 20:45:17 +0000 (20:45 +0000)]
Delete the file llvmc2/doc/LLVMC-Enhancements.rst + some minor language/spelling fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56458
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Mon, 22 Sep 2008 19:51:58 +0000 (19:51 +0000)]
Refactor FP intrinisic setup. Per review feedback.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56456
91177308-0d34-0410-b5e6-
96231b3b80d8
Oscar Fuentes [Mon, 22 Sep 2008 18:21:51 +0000 (18:21 +0000)]
CMake build system: support for parallel builds.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56453
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Sep 2008 18:19:24 +0000 (18:19 +0000)]
Per review feedback: Only perform
(srl x, (trunc (and y, c))) -> (srl x, (and (trunc y), c))
etc. when both "trunc" and "and" have single uses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56452
91177308-0d34-0410-b5e6-
96231b3b80d8
Arnold Schwaighofer [Mon, 22 Sep 2008 14:50:07 +0000 (14:50 +0000)]
Change the calling convention used when tail call optimization is enabled from CC_X86_32_TailCall to CC_X86_32_FastCC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56436
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Mon, 22 Sep 2008 10:06:26 +0000 (10:06 +0000)]
Add bound checks in SmallVector
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56432
91177308-0d34-0410-b5e6-
96231b3b80d8
Oscar Fuentes [Mon, 22 Sep 2008 02:33:43 +0000 (02:33 +0000)]
add_partially_linked_object: Replaced nonexistent MESSAGE option in
add_custom_command with COMMENT. It was forcing unconditional command
execution.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56425
91177308-0d34-0410-b5e6-
96231b3b80d8
Oscar Fuentes [Mon, 22 Sep 2008 01:08:49 +0000 (01:08 +0000)]
Initial support for the CMake build system.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56419
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 22 Sep 2008 00:44:35 +0000 (00:44 +0000)]
Add helper function to get a 32-bit floating point constant. No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56418
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 21 Sep 2008 23:30:17 +0000 (23:30 +0000)]
explain what earlyclobber actually is.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56415
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 21 Sep 2008 21:44:29 +0000 (21:44 +0000)]
Fold immediates into X86 shifts with fast isel. This generates:
sarl $3, %ecx
instead of:
movl $3, %ecx
sarl %cl, %edx
This shrinks fast isel 176.gcc by about 2000 instructions (.3%)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56413
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Sun, 21 Sep 2008 21:11:41 +0000 (21:11 +0000)]
Factor out code into HandleVirtRegDef, for consistency with
Handle{Virt,Phys}Reg{Def,Use}. Remove a redundant check
for register zero, and redundant checks for isPhysicalRegister.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56412
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Sun, 21 Sep 2008 21:01:49 +0000 (21:01 +0000)]
Instead of building a list and sorting it just to find a maximum element,
compute the maximum element directly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56411
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Sun, 21 Sep 2008 20:43:24 +0000 (20:43 +0000)]
Fetch the starting index of the block when assigning intervals. This gets live-in indices
correct in the presence of things like EH labels.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56410
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 21 Sep 2008 18:38:31 +0000 (18:38 +0000)]
don't print GlobalAddressSDNode's with an offset of zero as "foo0".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56399
91177308-0d34-0410-b5e6-
96231b3b80d8