Nick Lewycky
a533bd63e6
Add parens to fix GCC warning:
...
lib/Target/X86/X86MCCodeEmitter.cpp: 190: error: suggest parentheses around '&&' within '||'
llvm-svn: 115064
2010-09-29 18:56:57 +00:00
Chris Lattner
b7bfd3de07
remove PointerTracking from mainline, Edwin is going to move it out to ClamAV
...
for LLVM 2.9
llvm-svn: 115062
2010-09-29 18:43:27 +00:00
Chris Lattner
7f466d63e0
implement rdar://8491845 - Gas supports commuted forms of non-commutable instructions.
...
llvm-svn: 115061
2010-09-29 18:39:16 +00:00
Owen Anderson
8d6be4804f
Revert r114919, which caused some serious regressions on ARM.
...
llvm-svn: 115053
2010-09-29 18:05:19 +00:00
Daniel Dunbar
a89989db33
utils: Add GetRepositoryPath script, patch by Jonathan Mulder!
...
- Also, fix indention in GetSourceVersion while in the area.
llvm-svn: 115048
2010-09-29 17:57:01 +00:00
Bob Wilson
d16aaccb05
Increase ARM APCS preferred alignment for i64 and f64 from 32 bits to 64 bits.
...
LDM/STM instructions can run one cycle faster on some ARM processors if the
memory address is 64-bit aligned. Radar 8489376.
llvm-svn: 115047
2010-09-29 17:54:10 +00:00
Jason W Kim
cb0676f1cb
Undoing test commit blank space.
...
llvm-svn: 115045
2010-09-29 17:39:29 +00:00
Jason W Kim
db0e1aac44
Test commit -
...
llvm-svn: 115044
2010-09-29 17:33:42 +00:00
Jim Grosbach
9939090a14
Add braces for legibility.
...
llvm-svn: 115043
2010-09-29 17:32:29 +00:00
Daniel Dunbar
56dbefb6d6
lit: Fix a subtle resource usage bug when executing tests using the internal
...
shell runner.
We would inadvertently end up holding on to handles to the temporary files
longer than we should have been. On Win32, where open handles lock some file
operations, this caused problems in tests which would try to move temporary
files around (as Clang does by default now).
Many thanks to Francois Pichet for the excellent detective work on this.
llvm-svn: 115040
2010-09-29 15:59:37 +00:00
Oscar Fuentes
0e1a30e03a
Export LLVM_ALL_TARGETS in LLVM.cmake. It is used by LLVMConfig.
...
llvm-svn: 115039
2010-09-29 15:28:55 +00:00
Jim Grosbach
fe21554145
One Printer to rule them all, One Printer to find them,
...
One Printer to lower them all and in the back end bind them.
(Remove option to use the old non-MC asm printer.)
llvm-svn: 115038
2010-09-29 15:23:40 +00:00
Rafael Espindola
96509a5550
Move "local commons" to the end of .bss to match the gnu as behavior.
...
llvm-svn: 115037
2010-09-29 14:52:01 +00:00
Rafael Espindola
1b3d55417c
Add a test that I forgot to add with a previous commit.
...
llvm-svn: 115036
2010-09-29 14:40:49 +00:00
Gabor Greif
c6deccbe3a
do not compare actual branch labels; this may fix llvm-gcc-x86_64-darwin10-cross-mingw32 buildbot too
...
llvm-svn: 115034
2010-09-29 10:45:43 +00:00
Gabor Greif
e1de402213
improve heuristics to find the 'and' corresponding to 'tst' to also catch opportunities on thumb2
...
added some doxygen on the way
llvm-svn: 115033
2010-09-29 10:12:08 +00:00
Chris Lattner
7d85c2b8f6
add some random notes.
...
llvm-svn: 115032
2010-09-29 07:25:03 +00:00
Chris Lattner
f823b68060
merge all the llvm-gcc pieces together. Recommend that people try dragonegg if they care about fortran performance.
...
llvm-svn: 115031
2010-09-29 05:34:42 +00:00
Chris Lattner
f13b1d5c18
prepare for new content.
...
llvm-svn: 115030
2010-09-29 05:30:03 +00:00
Chris Lattner
9c58de2dc4
fix rdar://8490728 - llvm-mc rejects gpr64 form of 'movmskpd'
...
llvm-svn: 115029
2010-09-29 05:05:03 +00:00
Chris Lattner
890c21a20a
add assembler support for the cvtsd2sil/cvtsd2siq mnemonics, rdar://8456382
...
llvm-svn: 115027
2010-09-29 04:55:40 +00:00
Michael J. Spencer
65330be0ae
MC-COFF: Fix test. IMAGE_SYM_CLASS_LABEL should never have been emitted.
...
llvm-svn: 115024
2010-09-29 03:59:25 +00:00
Chris Lattner
54939ddf1f
make the x86 mccode emitter emit the 0x67 and 0x66 prefix bytes in the same
...
order as cctools for diffability.
llvm-svn: 115022
2010-09-29 03:43:43 +00:00
Chris Lattner
13354d7bbc
implement support for 32-bit address operands in 64-bit mode, which
...
are defined to emit the 0x67 prefix byte. rdar://8482675
llvm-svn: 115021
2010-09-29 03:33:25 +00:00
Michael J. Spencer
9c138864bc
MC-COFF: Fix symbol storage class for globals
...
llvm-svn: 115020
2010-09-29 03:13:41 +00:00
Chris Lattner
c14d59589c
add basic avx support to the disassembler, also teach it about ssmem/sdmem
...
operands.
With this done, we can remove the _Int suffixes from the round instructions
without the disassembler blowing up. This allows the assembler to support
them, implementing rdar://8456376 - llvm-mc rejects 'roundss'
llvm-svn: 115019
2010-09-29 02:57:56 +00:00
Chris Lattner
f90296b045
add asmparser support for cvttpd2dq by removing some Int_ prefixes.
...
Clean up cvttps2dq by removing some redundant implementations of the
same instruction. rdar://8456382
llvm-svn: 115018
2010-09-29 02:36:32 +00:00
Chris Lattner
e5c5c8dc1f
implement rdar://8456382 - cvtsd2si support, by removing some Int_ prefixes.
...
llvm-svn: 115017
2010-09-29 02:24:57 +00:00
Chris Lattner
cbecb9a4d3
implement rdar://8456378 and PR7557 - support for the fstsw,
...
an instruction that requires a WHOLE NEW wonderful kind of alias.
llvm-svn: 115015
2010-09-29 01:50:45 +00:00
Chris Lattner
9b9a847b8c
change the protocol TargetAsmPArser::MatchInstruction method to take an
...
MCStreamer to emit into instead of an MCInst to fill in. This allows the
matcher extra flexibility and is more convenient.
llvm-svn: 115014
2010-09-29 01:42:58 +00:00
Eric Christopher
e81be3c669
Rework comparison handling to set a register on true/false. This avoids
...
problems with phi-nodes in blocks that have hard and not virtual registers.
Accordingly update branch handling to compensate.
llvm-svn: 115013
2010-09-29 01:14:47 +00:00
Eric Christopher
0bde6df6a3
Remove unnecessary set ahead of time.
...
llvm-svn: 115011
2010-09-29 00:50:57 +00:00
Evan Cheng
7eb08b1ad9
Separate itinerary classes for mvn from mov; for tst / teq from cmp / cmn.
...
llvm-svn: 115010
2010-09-29 00:49:25 +00:00
Eric Christopher
c9ebc75b88
Remove assert, add comment.
...
llvm-svn: 115009
2010-09-29 00:49:09 +00:00
Evan Cheng
7fffe3cf58
Assign bitwise binary instructions different itinerary classes from ALU instructions such as add / sub.
...
llvm-svn: 115008
2010-09-29 00:27:46 +00:00
Evan Cheng
39c462b4f1
Add support to model pipeline bypass / forwarding.
...
llvm-svn: 115005
2010-09-28 23:50:49 +00:00
Bill Wendling
b01224f53c
And remove r114997's test.
...
llvm-svn: 115003
2010-09-28 23:24:18 +00:00
Bill Wendling
fc29f0d706
Revert r114997. It was causing a failure on darwin10-selfhost.
...
llvm-svn: 115002
2010-09-28 23:11:55 +00:00
Eric Christopher
2803dbc225
32-bit constant ints only for now.
...
llvm-svn: 115001
2010-09-28 22:47:54 +00:00
Oscar Fuentes
eb27a44982
Removed a bunch of unnecessary target_link_libraries.
...
llvm-svn: 114999
2010-09-28 22:39:14 +00:00
Oscar Fuentes
64441f124a
Simplified LLVMConfig.
...
llvm-svn: 114998
2010-09-28 22:38:39 +00:00
Bill Wendling
13775375ed
Fix a FIXME. _foo.eh symbols are currently always exported so that the linker
...
knows about them. This is not necessary on 10.6 and later.
llvm-svn: 114997
2010-09-28 22:36:56 +00:00
Dan Gohman
898f765c13
When an MDNode changes to become identical to another MDNode,
...
delete the MDNode that changed, rather than the other MDNode.
This is less work, because it doesn't require the changed node
to be re-inserted into the uniquing map and it doesn't require
the is-function-local flag to be recomputed. Also, it avoids
trouble when the existing node is part of a complicated
data structure.
llvm-svn: 114996
2010-09-28 22:07:19 +00:00
Owen Anderson
c34e1296b8
Add a subtarget hook for reporting the misprediction penalty. Use this to provide more precise
...
cost modeling for if-conversion. Now if only we had a way to estimate the misprediction probability.
Adjsut CodeGen/ARM/ifcvt10.ll. The pipeline on Cortex-A8 is long enough that it is still profitable
to predicate an ldm, but the shorter pipeline on Cortex-A9 makes it unprofitable.
llvm-svn: 114995
2010-09-28 21:57:50 +00:00
Eric Christopher
3024929d5a
Integer materialization needed the same thinko change.
...
llvm-svn: 114994
2010-09-28 21:55:34 +00:00
Nick Lewycky
b9daeb2fd0
Resolve this GCC warning:
...
ARMTargetMachine.cpp:53: error: control reaches end of non-void function
llvm-svn: 114992
2010-09-28 21:40:26 +00:00
Anton Korobeynikov
f1be021755
User proper libcall names & condcodes while compiling for ARM EABI.
...
Patch by Evzen Muller!
llvm-svn: 114991
2010-09-28 21:39:26 +00:00
Dan Gohman
e6de2f7a66
Scope a varible inside an if statement, to make it clear that
...
it's not used afterwards.
llvm-svn: 114986
2010-09-28 21:02:55 +00:00
Owen Anderson
87245e5e04
Give the if-converter access to MachineLoopInfo, and use it to generate plausible branch prediction
...
estimates.
llvm-svn: 114981
2010-09-28 20:42:15 +00:00
Bill Wendling
6c49954a21
Fix spelling.
...
llvm-svn: 114974
2010-09-28 18:54:43 +00:00