Oscar Fuentes
5bb8ed7795
Updated cmake library dependencies.
...
llvm-svn: 84564
2009-10-19 23:00:00 +00:00
Jim Grosbach
2fb5eb1264
Enable allocation of R3 in Thumb1
...
llvm-svn: 84563
2009-10-19 22:57:03 +00:00
Chris Lattner
24d265dae3
use EmitLabel instead of text emission
...
llvm-svn: 84562
2009-10-19 22:51:16 +00:00
Chris Lattner
df848440d1
add a twine version of MCContext::GetOrCreateSymbol.
...
llvm-svn: 84561
2009-10-19 22:49:00 +00:00
Chris Lattner
47131861be
lower the ARM::CONSTPOOL_ENTRY pseudo op, giving us constant pool entries
...
like:
@ BB#1:
.align 2
LCPI1_0:
.long L_.str-(LPC0+8)
Note that proper indentation of the label :)
llvm-svn: 84558
2009-10-19 22:33:05 +00:00
Jim Grosbach
c813cf9649
Adjust the scavenge register spilling to allow the target to choose an
...
appropriate restore location for the spill as well as perform the actual
save and restore.
The Thumb1 target uses this to make sure R12 is not clobbered while a spilled
scavenger register is live there.
llvm-svn: 84554
2009-10-19 22:27:30 +00:00
Chris Lattner
ce9e652b8a
add MCInstLower support for lowering ARM::PICADD, a pseudo op for pic stuffola.
...
llvm-svn: 84553
2009-10-19 22:23:04 +00:00
Owen Anderson
06714a71a9
Refactor lookup_or_add to contain _MUCH_ less duplicated code. Add support for
...
numbering first class aggregate instructions while we're at it.
llvm-svn: 84547
2009-10-19 22:14:22 +00:00
Chris Lattner
d7d7fee3fe
add register list and hacked up addrmode #4 support, we now get this:
...
_main:
stmsp! sp!, {r7, lr}
mov r7, sp
sub sp, sp, #4
mov r0, #0
str r0, [sp]
ldr r0, LCPI1_0
bl _printf
ldr r0, [sp]
mov sp, r7
ldmsp! sp!, {r7, pc}
Note the unhappy ldm/stm because of modifiers being ignored.
llvm-svn: 84546
2009-10-19 22:09:23 +00:00
Chris Lattner
8124977463
revert r84540, fixing build breakage I didn't see because of
...
broken makefile deps :(
llvm-svn: 84544
2009-10-19 21:59:25 +00:00
Chris Lattner
30baeae77d
add addrmode2 support, getting us up to:
...
_main:
stm ,
mov r7, sp
sub sp, sp, #4
mov r0, #0
str r0, [sp]
ldr r0, LCPI1_0
bl _printf
ldr r0, [sp]
mov sp, r7
ldm ,
llvm-svn: 84543
2009-10-19 21:57:05 +00:00
Chris Lattner
ec500c80c6
add jump tables, constant pools and some trivial global
...
lowering stuff. We can now compile hello world to:
_main:
stm ,
mov r7, sp
sub sp, sp, #4
mov r0, #0
str r0,
ldr r0,
bl _printf
ldr r0,
mov sp, r7
ldm ,
Almost looks like arm code :)
llvm-svn: 84542
2009-10-19 21:53:00 +00:00
Victor Hernandez
a666c49572
Malloc calls are marked NoAlias, so the code below the isMalloc() check makes it redundant. Removing the isMalloc() check.
...
llvm-svn: 84541
2009-10-19 21:47:22 +00:00
Chris Lattner
4b35be3f3b
pass mangler in as a reference instead of a pointer.
...
llvm-svn: 84540
2009-10-19 21:45:31 +00:00
Mikhail Glushenkov
7c31bb2adc
More refactoring...
...
llvm-svn: 84537
2009-10-19 21:24:28 +00:00
Chris Lattner
3755b735a0
reduce #includes
...
llvm-svn: 84536
2009-10-19 21:23:15 +00:00
Chris Lattner
4318ab8ce7
add printing support for SOImm operands, getting us to:
...
_main:
stm ,
mov r7, sp
sub sp, sp, #4
mov r0, #0
str r0,
llvm-svn: 84535
2009-10-19 21:21:39 +00:00
Owen Anderson
4954f8ef02
Simplify some code.
...
llvm-svn: 84533
2009-10-19 21:14:57 +00:00
Chris Lattner
241c56bee6
wire up some basic printOperand goodness, giving us stuff like this before
...
we abort:
_main:
stm ,
mov r7, sp
sub sp, sp,
mov r0,
str r0,
llvm-svn: 84532
2009-10-19 20:59:55 +00:00
Chris Lattner
cd8bd77b64
add the files that go with the previous rev
...
llvm-svn: 84531
2009-10-19 20:21:05 +00:00
Chris Lattner
72c89de0e0
wire up skeletal support for having llc print instructions
...
through mcinst lowering -> mcinstprinter, when llc is passed
the -enable-arm-mcinst-printer flag. Currently this
is very "aborty".
llvm-svn: 84530
2009-10-19 20:20:46 +00:00
Owen Anderson
fb4db70d0f
Banish ConstantsLock. It's serving no purpose other than slowing things down
...
at the moment.
llvm-svn: 84529
2009-10-19 20:11:52 +00:00
Chris Lattner
d2f263e74f
wire up ARM's printMCInst method. Now llvm-mc should be able to produce
...
"something" when printing MCInsts, it will just be missing all the
operand info.
llvm-svn: 84528
2009-10-19 19:59:05 +00:00
Chris Lattner
11fcbad759
stub out a minimal ARMInstPrinter.
...
llvm-svn: 84527
2009-10-19 19:56:26 +00:00
Chris Lattner
cf8c23d554
remove strings from instructions who are never asmprinted.
...
All of these "subreg32" modifier instructions are handled
explicitly by the MCInst lowering phase. If they got to
the asmprinter, they would explode. They should eventually
be replace with correct use of subregs.
llvm-svn: 84526
2009-10-19 19:51:42 +00:00
Jeffrey Yasskin
fdb36c1a29
Clean up the JITResolver stub/callsite<->function maps.
...
The JITResolver maps Functions to their canonical stubs and all callsites for
lazily-compiled functions to their target Functions. To make Function
destruction work, I'm going to need to remove all callsites on destruction, so
this patch also adds the reverse mapping for that.
There was an incorrect assumption in here that the only stub for a function
would be the one caused by needing to lazily compile it, while x86-64 far calls
and dlsym-stubs could also cause such stubs, but I didn't look for a test case
that the assumption broke.
This also adds DenseMapInfo<AssertingVH> so I can use DenseMaps instead of
std::maps.
llvm-svn: 84522
2009-10-19 18:49:59 +00:00
Chris Lattner
e3469a4209
simplify code, reducing string thrashing.
...
llvm-svn: 84521
2009-10-19 18:49:14 +00:00
Chris Lattner
1816e314c6
switch hidden gv stubs to use MachineModuleInfoMachO instead of a custom map.
...
llvm-svn: 84520
2009-10-19 18:44:38 +00:00
Chris Lattner
b73edceec4
use MachineModuleInfoMachO for non-lazy gv stubs instead of a private map.
...
llvm-svn: 84519
2009-10-19 18:38:33 +00:00
Chris Lattner
b9bbaf7f4d
convert to filecheck syntax and make a lot more aggressive.
...
llvm-svn: 84517
2009-10-19 18:27:56 +00:00
Anton Korobeynikov
26ed697cf2
Revert r84295, this unbreaks llvm-gcc bootstrap on x86-64/linux
...
llvm-svn: 84516
2009-10-19 18:21:09 +00:00
Chris Lattner
6fd5bc3ba0
rename test
...
llvm-svn: 84515
2009-10-19 18:18:07 +00:00
Chris Lattner
e7ea33c824
remove dead map
...
llvm-svn: 84513
2009-10-19 18:11:25 +00:00
Chris Lattner
1598caa700
don't bother trying to avoid emitting redundant constant pool alignment directives.
...
llvm-svn: 84512
2009-10-19 18:08:02 +00:00
Chris Lattner
385ca4ca8a
remove accidental comment.
...
llvm-svn: 84510
2009-10-19 18:03:41 +00:00
Chris Lattner
bddb00eadd
emit .subsections_via_symbols through MCStreamer instead of textually.
...
llvm-svn: 84509
2009-10-19 18:03:08 +00:00
Chris Lattner
e53fff883a
cleanup doFinalization -> EmitEndOfAsmFile.
...
llvm-svn: 84508
2009-10-19 17:59:19 +00:00
Stuart Hastings
0e0c090f5d
Tweak top-level Makefile to facilitate Apple-style build.
...
llvm-svn: 84507
2009-10-19 17:53:54 +00:00
Nate Begeman
181b8fae1b
PR 5245 - The imediate size target flag was not set on 3A-prefixed SSSE3 instructions.
...
llvm-svn: 84506
2009-10-19 17:31:16 +00:00
Dan Gohman
d2e75c9ae0
Fix SplitBlockPredecessors' LoopInfo updating code to handle the case
...
where a loop's header is being split and it has predecessors which are not
contained by the most-nested loop which contains the loop.
This fixes PR5235.
llvm-svn: 84505
2009-10-19 16:04:50 +00:00
Dan Gohman
5a182b7b78
Fix a typo in a comment.
...
llvm-svn: 84504
2009-10-19 14:56:05 +00:00
Dan Gohman
05e648bef4
Change a few instance variables to be local variables.
...
llvm-svn: 84503
2009-10-19 14:52:05 +00:00
Dan Gohman
595545d2e7
Change instnamer to name arguments "arg" instead of "tmp" for clarity, and
...
to name basic blocks "bb" instead of "BB", for consistency.
llvm-svn: 84502
2009-10-19 14:47:32 +00:00
Daniel Dunbar
cb08b1506f
NNT: Add -parallel-test option, which runs llvm-test with
...
ENABLE_PARALLEL_REPORT.
llvm-svn: 84497
2009-10-19 13:20:56 +00:00
Daniel Dunbar
82c9679c3c
NNT: Don't hard code -l3.0 argument to make, this is very server dependent. Users who care can use -compileflags for this.
...
Also, fix make clean call and a few other tweaks.
llvm-svn: 84496
2009-10-19 13:20:50 +00:00
Daniel Dunbar
43a3425c05
NNT: Fix refactoro, I dropped the list of all (llvm-test) tests. I'm sure it was named dejagnu_test_list for a good reason.
...
llvm-svn: 84495
2009-10-19 13:20:44 +00:00
Daniel Dunbar
596da5540e
NNT: Lift conditional logic out of test steps.
...
llvm-svn: 84494
2009-10-19 13:20:38 +00:00
Daniel Dunbar
48768a77f1
NNT: Now that build & test steps are factored out, coalesce all the logic together.
...
llvm-svn: 84493
2009-10-19 13:20:31 +00:00
Daniel Dunbar
3e21f0e5f2
NNT: Sink code for running nightly test into subroutine.
...
llvm-svn: 84492
2009-10-19 13:20:25 +00:00
Daniel Dunbar
5af56e66c2
NNT: Tweaks and simplifications.
...
- Split out configure log.
- Kill off GetRegexNum.
- Fix GetRegex to not return previous match on failure.
- Remove dead code.
llvm-svn: 84491
2009-10-19 13:20:19 +00:00