Chris Lattner
889a6217fa
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
5c704d505c
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
e3796a0fee
pass mangler in as a reference instead of a pointer.
...
llvm-svn: 84540
2009-10-19 21:45:31 +00:00
Mikhail Glushenkov
9abd706881
More refactoring...
...
llvm-svn: 84537
2009-10-19 21:24:28 +00:00
Chris Lattner
8bd9b9d3fa
reduce #includes
...
llvm-svn: 84536
2009-10-19 21:23:15 +00:00
Chris Lattner
89d47205b5
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
1059b5b32d
Simplify some code.
...
llvm-svn: 84533
2009-10-19 21:14:57 +00:00
Chris Lattner
93e3ef6536
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
78393d79a0
add the files that go with the previous rev
...
llvm-svn: 84531
2009-10-19 20:21:05 +00:00
Chris Lattner
71eb077c15
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
5dab84ca9c
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
296544e15f
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
a290778859
stub out a minimal ARMInstPrinter.
...
llvm-svn: 84527
2009-10-19 19:56:26 +00:00
Chris Lattner
5db7b6a5d4
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
7d2edada7f
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
8d2e3a28d6
simplify code, reducing string thrashing.
...
llvm-svn: 84521
2009-10-19 18:49:14 +00:00
Chris Lattner
3334deb19b
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
6462adcd20
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
0ed889521b
convert to filecheck syntax and make a lot more aggressive.
...
llvm-svn: 84517
2009-10-19 18:27:56 +00:00
Anton Korobeynikov
8383c3d7f3
Revert r84295, this unbreaks llvm-gcc bootstrap on x86-64/linux
...
llvm-svn: 84516
2009-10-19 18:21:09 +00:00
Chris Lattner
7ea0c35ba0
rename test
...
llvm-svn: 84515
2009-10-19 18:18:07 +00:00
Chris Lattner
24fcb826bd
remove dead map
...
llvm-svn: 84513
2009-10-19 18:11:25 +00:00
Chris Lattner
84a493ca21
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
66ebfab3ab
remove accidental comment.
...
llvm-svn: 84510
2009-10-19 18:03:41 +00:00
Chris Lattner
e6da1826e8
emit .subsections_via_symbols through MCStreamer instead of textually.
...
llvm-svn: 84509
2009-10-19 18:03:08 +00:00
Chris Lattner
ee9399acaa
cleanup doFinalization -> EmitEndOfAsmFile.
...
llvm-svn: 84508
2009-10-19 17:59:19 +00:00
Stuart Hastings
a19596bf64
Tweak top-level Makefile to facilitate Apple-style build.
...
llvm-svn: 84507
2009-10-19 17:53:54 +00:00
Nate Begeman
5ca7b345b9
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
8f986672a1
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
b0db9917af
Fix a typo in a comment.
...
llvm-svn: 84504
2009-10-19 14:56:05 +00:00
Dan Gohman
20a327b31f
Change a few instance variables to be local variables.
...
llvm-svn: 84503
2009-10-19 14:52:05 +00:00
Dan Gohman
511d2e26dd
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
1c20540ca5
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
74e154d5d1
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
714457f2b1
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
4ca4a76a39
NNT: Lift conditional logic out of test steps.
...
llvm-svn: 84494
2009-10-19 13:20:38 +00:00
Daniel Dunbar
1f0bfb335c
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
4e8afa9096
NNT: Sink code for running nightly test into subroutine.
...
llvm-svn: 84492
2009-10-19 13:20:25 +00:00
Daniel Dunbar
b9d15d60b1
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
Daniel Dunbar
8fd172e0eb
NNT: Move build code into subroutine.
...
llvm-svn: 84490
2009-10-19 13:20:13 +00:00
Daniel Dunbar
98d5036183
NNT: Move source checkout code into subroutine.
...
llvm-svn: 84489
2009-10-19 13:20:06 +00:00
Daniel Dunbar
47d021bc25
NNT: Remove .{o,a} size info, this is better tracked elsewhere.
...
llvm-svn: 84488
2009-10-19 13:20:00 +00:00
Daniel Dunbar
070314ef26
NNT: Remove code to track build warnings, the buildbots cover this.
...
llvm-svn: 84487
2009-10-19 13:19:53 +00:00
Torok Edwin
033f01c922
Fix PR5247, "lock addq" pattern (and other atomics), it DOES modify EFLAGS.
...
LLC was scheduling compares before the adds causing wrong branches to be taken
in programs, resulting in misoptimized code wherever atomic adds where used.
llvm-svn: 84485
2009-10-19 11:00:58 +00:00
Daniel Dunbar
b16c77cbd3
Also check for __POWERPC__ when skipping these tests.
...
llvm-svn: 84482
2009-10-19 09:19:32 +00:00
Daniel Dunbar
27c4e8830b
NNT: Remove hard coded BuildDir and WebDir, users should have to specify these.
...
llvm-svn: 84481
2009-10-19 09:19:19 +00:00
Daniel Dunbar
0c2dc674de
NNT: Remove "CVS Stats", this isn't particularly useful and can be better done by the server or user.
...
llvm-svn: 84480
2009-10-19 09:19:09 +00:00
Daniel Dunbar
4cceb73a71
NNT: Remove now-unused -cvstag argument and CVSROOT code.
...
llvm-svn: 84479
2009-10-19 09:18:54 +00:00
Daniel Dunbar
029162a1ad
NNT: Remove -usecvs option, this is very old.
...
llvm-svn: 84478
2009-10-19 09:18:46 +00:00
Daniel Dunbar
d081488280
NNT: Remove -debug argument, it is unused.
...
llvm-svn: 84477
2009-10-19 09:18:37 +00:00