Jim Grosbach
6d65ad0408
Trailing whitespace.
...
llvm-svn: 117188
2010-10-22 23:48:29 +00:00
Jim Grosbach
7de028efd2
Add a CMP test.
...
llvm-svn: 117187
2010-10-22 23:48:01 +00:00
Owen Anderson
3416940e43
Add tests for NEON encoding of vsubw.
...
llvm-svn: 117186
2010-10-22 23:46:07 +00:00
Jim Grosbach
1df6f11838
tidy up
...
llvm-svn: 117185
2010-10-22 23:46:04 +00:00
Owen Anderson
a9c3c6c610
Add tests for NEON encoding of vsubl.
...
llvm-svn: 117183
2010-10-22 23:36:36 +00:00
Andrew Trick
4043309a54
Nonvirtual dtor that was accessible enough to be bad.
...
llvm-svn: 117180
2010-10-22 23:33:19 +00:00
Owen Anderson
8bc3d6ec45
Add tests for NEON encoding of vsub.
...
llvm-svn: 117177
2010-10-22 23:21:04 +00:00
Gabor Greif
6e58dbc9e4
fix memory-layout assumption which only holds on little-endian systems
...
llvm-svn: 117176
2010-10-22 23:16:11 +00:00
Andrew Trick
7a1dadd47d
This is a prototype of an experimental register allocation
...
framework. It's purpose is not to improve register allocation per se,
but to make it easier to develop powerful live range splitting. I call
it the basic allocator because it is as simple as a global allocator
can be but provides the building blocks for sophisticated register
allocation with live range splitting.
A minimal implementation is provided that trivially spills whenever it
runs out of registers. I'm checking in now to get high-level design
and style feedback. I've only done minimal testing. The next step is
implementing a "greedy" allocation algorithm that does some register
reassignment and makes better splitting decisions.
llvm-svn: 117174
2010-10-22 23:09:15 +00:00
Owen Anderson
2d807f4ed0
Add tests for NEON encoding of vqdmlsl.
...
llvm-svn: 117173
2010-10-22 23:08:47 +00:00
Bob Wilson
cefd7c2b60
Do not install libBugpointPasses.dylib for Apple builds. Radar 8585383.
...
llvm-svn: 117172
2010-10-22 23:04:17 +00:00
Owen Anderson
593d941f2f
Add tests for NEON encoding of vmlsl.
...
llvm-svn: 117171
2010-10-22 23:02:27 +00:00
Jakob Stoklund Olesen
c78f761faf
Add more verification of LiveIntervals.
...
llvm-svn: 117170
2010-10-22 22:48:58 +00:00
Jakob Stoklund Olesen
68258f467a
Be more strict about detecting multi-use blocks for isolation.
...
When a block has exactly two uses and the register is both live-in and live-out,
don't isolate the block. We would be inserting two copies, so we haven't really
made any progress.
If the live-in and live-out values separate into disconnected components after
splitting, we would be making progress. We can't detect that for now.
llvm-svn: 117169
2010-10-22 22:48:56 +00:00
Jim Grosbach
de52e11864
tidy up.
...
llvm-svn: 117166
2010-10-22 22:15:48 +00:00
Jim Grosbach
bba77cca02
ARM mode encoding information for CLZ, RBIT, REV*, and PKH*.
...
llvm-svn: 117165
2010-10-22 22:12:16 +00:00
Bob Wilson
ab226b9a10
Fix the name of libLLVMHello.dylib so that it does not get installed for
...
Apple builds. Radar 8585383.
llvm-svn: 117164
2010-10-22 22:10:57 +00:00
Jim Grosbach
172f52fb3d
Remove duplicate test.
...
llvm-svn: 117158
2010-10-22 22:04:28 +00:00
Jim Grosbach
3cb3f83374
tidy up.
...
llvm-svn: 117157
2010-10-22 22:01:56 +00:00
Jim Grosbach
4366bb4852
FileCheck-ize a few tests.
...
llvm-svn: 117156
2010-10-22 21:55:03 +00:00
Evan Cheng
2c2dcc69d8
Unbreak build.
...
llvm-svn: 117155
2010-10-22 21:49:09 +00:00
Bob Wilson
0290dbe7d4
Teach instcombine to set the alignment arguments for NEON load/store intrinsics.
...
llvm-svn: 117154
2010-10-22 21:41:48 +00:00
Evan Cheng
20b70697bb
Transfer implicit ops when forming load multiple and return instructions.
...
llvm-svn: 117151
2010-10-22 21:29:58 +00:00
Owen Anderson
8c38a57413
Add tests for the correct encoding of NEON vmls.
...
llvm-svn: 117145
2010-10-22 20:31:24 +00:00
Jakob Stoklund Olesen
de1439ce2b
Be more strict when detecting critical edges before loop splitting.
...
An exit block with a critical edge must only have predecessors in the loop, or
just before the loop. This guarantees that the inserted copies in the loop
predecessors dominate the exit block.
llvm-svn: 117144
2010-10-22 20:28:23 +00:00
Jakob Stoklund Olesen
967bcbf445
Add print methods
...
llvm-svn: 117143
2010-10-22 20:28:21 +00:00
Owen Anderson
424434414e
Add correct NEON encodings for vqdmlal.
...
llvm-svn: 117134
2010-10-22 19:35:48 +00:00
Jim Grosbach
10195e9b73
Add the encoding information for the rest of the ARM mode multiply instructions.
...
llvm-svn: 117133
2010-10-22 19:15:30 +00:00
Michael J. Spencer
81bb7d4ad7
I hate line endings.
...
llvm-svn: 117132
2010-10-22 19:14:39 +00:00
Owen Anderson
2bbdc62e17
Provide correct encodings for NEON vmlal.
...
llvm-svn: 117131
2010-10-22 19:05:25 +00:00
Oscar Fuentes
487431ce82
Loadable modules are not supported on Cygwin. PR 6655.
...
llvm-svn: 117130
2010-10-22 19:03:24 +00:00
Evan Cheng
e5b7a3a09f
Silence compiler warnings.
...
llvm-svn: 117128
2010-10-22 18:57:05 +00:00
Owen Anderson
ada2b33321
Provide correct NEON encodings for vmla.
...
llvm-svn: 117126
2010-10-22 18:54:37 +00:00
Michael J. Spencer
8daaefa006
Endian: Get rid of LLVM_IS_HOST_BIG_ENDIAN.
...
llvm-svn: 117124
2010-10-22 18:45:12 +00:00
Stuart Hastings
772bf86028
Temporarily revert r117079; it broke a tester. Radar 6635085.
...
llvm-svn: 117122
2010-10-22 18:44:22 +00:00
Jim Grosbach
ca2897a0ca
More ARM multiply instuction binary encodings.
...
llvm-svn: 117121
2010-10-22 18:35:16 +00:00
Evan Cheng
efac5b5f8d
Add fastcc cc: pass and return VFP / NEON values in registers. Controlled by -arm-fastcc for now.
...
llvm-svn: 117119
2010-10-22 18:23:05 +00:00
Owen Anderson
399ec622e4
Add testscases for encoding of NEON vdqmull.
...
llvm-svn: 117115
2010-10-22 17:57:37 +00:00
Jim Grosbach
eabb7c5bd1
Parameterize a bit of ARM encoding information, simplifying some instruction
...
definitions.
llvm-svn: 117114
2010-10-22 17:42:06 +00:00
Oscar Fuentes
b7f2510588
Avoid stalled file dependency when tablegenning.
...
Patch by Frits van Bommel!
llvm-svn: 117113
2010-10-22 17:37:42 +00:00
Benjamin Kramer
9e988fe81e
Make some symbols static, move classes into anonymous namespaces.
...
llvm-svn: 117111
2010-10-22 17:35:07 +00:00
Oscar Fuentes
bd0ca690c8
Don't try to guess svn version when current path is a symlink.
...
See PR 8473.
llvm-svn: 117109
2010-10-22 17:16:26 +00:00
Jim Grosbach
0ae6bf8095
More ARM multiply instruction encoding information.
...
llvm-svn: 117108
2010-10-22 17:16:17 +00:00
Oscar Fuentes
e9b7aa0d30
Teach CMake to only touch tablegen-generated files if anything
...
actually changed.
Patch by Frits van Bommel!
llvm-svn: 117102
2010-10-22 16:20:10 +00:00
Wesley Peck
488027efa3
Making the e_machine configurable by the target backend in ELFObjectWriter.
...
llvm-svn: 117099
2010-10-22 15:52:49 +00:00
NAKAMURA Takumi
4c7d031a0d
lli: On Cygwin-1.5, lli crashes at invoking destructors in atexit handler.
...
llvm-svn: 117095
2010-10-22 14:53:59 +00:00
Peter Collingbourne
e43dd89068
Standardise all build-mode affecting {EN,DIS}ABLE_* make options to
...
test equality to 1, and fix/update documentation to reflect this
llvm-svn: 117094
2010-10-22 12:54:34 +00:00
NAKAMURA Takumi
00eaed4fe8
test/Makefile: Force lit -j1 on Cygwin.
...
lit -jN causes crash on Cygwin's python.
llvm-svn: 117093
2010-10-22 09:40:37 +00:00
Michael J. Spencer
93269f7395
Rename LLVM_IS_TARGET_BIG_ENDIAN to LLVM_IS_HOST_BIG_ENDIAN to reflect what it actually means.
...
llvm-svn: 117092
2010-10-22 08:47:28 +00:00
Andrew Trick
b9e8700beb
Reverting r117031 to cleanup valgrind errors.
...
It doesn't look like anything is wrong with the checkin,
but the new test cases expose a mem bug in AsmParser.
llvm-svn: 117087
2010-10-22 03:58:29 +00:00