Chris Lattner
|
2f690cb2dd
|
Fix PR4466 by making fastisel set operand flags correctly.
llvm-svn: 74366
|
2009-06-27 01:31:51 +00:00 |
|
David Goodwin
|
e1979dfbf5
|
Remove outdated comment.
llvm-svn: 74357
|
2009-06-26 23:39:02 +00:00 |
|
David Goodwin
|
90fc344e41
|
When possible, use "mvn ra, rb" instead of "eor ra, rb, -1" because mvn has a narrow version and eor(i) does not.
llvm-svn: 74355
|
2009-06-26 23:13:13 +00:00 |
|
David Greene
|
d33e8e7d83
|
Add feature flags for AVX and FMA and fix some SSE4A feature flag
initialization problems.
llvm-svn: 74350
|
2009-06-26 22:46:54 +00:00 |
|
Evan Cheng
|
016ed65455
|
Add x86 support for 'n' inline asm modifier. This will be handled target independently as part of MC work.
llvm-svn: 74336
|
2009-06-26 22:00:19 +00:00 |
|
Chris Lattner
|
3a48623aef
|
simplify printing of MO_ExternalSymbol in a non-pcrel context.
llvm-svn: 74334
|
2009-06-26 21:47:27 +00:00 |
|
Owen Anderson
|
7fdfd4be66
|
Privatize some data.
llvm-svn: 74332
|
2009-06-26 21:45:04 +00:00 |
|
Anton Korobeynikov
|
aab56476b2
|
Split thumb-related stuff into separate classes.
Step 1: ARMInstructionInfo => {ARM,Thumb}InstructionInfo
llvm-svn: 74329
|
2009-06-26 21:28:53 +00:00 |
|
Chris Lattner
|
a8ee785cef
|
add %rip to the GR64 register class. Lets avoid allocating it to anything though! :)
llvm-svn: 74328
|
2009-06-26 21:25:00 +00:00 |
|
Chris Lattner
|
1f3d17f45d
|
Move all the TLS processing logic into isel, don't do it in asmprinter at all.
llvm-svn: 74327
|
2009-06-26 21:20:29 +00:00 |
|
Chris Lattner
|
ae824fc834
|
make sure to propagate operand flags in SelectTLSADDRAddr properly.
llvm-svn: 74326
|
2009-06-26 21:18:37 +00:00 |
|
David Goodwin
|
921faa64cd
|
Thumb-2 has CLZ.
llvm-svn: 74322
|
2009-06-26 20:47:43 +00:00 |
|
David Goodwin
|
9da977f216
|
Use "adcs/sbcs" only when the carry-out is live, otherwise use "adc/sbc".
llvm-svn: 74321
|
2009-06-26 20:45:56 +00:00 |
|
Chris Lattner
|
a56bff5e36
|
minor cleanup/framework changes.
llvm-svn: 74316
|
2009-06-26 20:00:05 +00:00 |
|
Owen Anderson
|
333c8af1b1
|
Privatize some variables.
llvm-svn: 74315
|
2009-06-26 19:48:37 +00:00 |
|
Chris Lattner
|
0a0494b4f9
|
move magic for PIC constantpool references from asmprinter to isel.
llvm-svn: 74313
|
2009-06-26 19:22:52 +00:00 |
|
Chris Lattner
|
45946d9021
|
use jump table operand flags in asm printer instead of "magic predicates"
llvm-svn: 74310
|
2009-06-26 18:55:01 +00:00 |
|
David Goodwin
|
46eb5a7a2d
|
ADC used to implement adde should use "adcs" opcode instead of "adc".
llvm-svn: 74293
|
2009-06-26 18:07:25 +00:00 |
|
David Goodwin
|
877790aa5f
|
Currently there is a pattern for the thumb-2 MOV 16-bit immediate instruction. That instruction cannot write the flags so it should use T2I instead of T2sI.
Also, added a pattern for the thumb-2 MOV of shifted immediate since that can encode immediates not encodable by the 16-bit immediate.
llvm-svn: 74288
|
2009-06-26 16:10:07 +00:00 |
|
Evan Cheng
|
b93625f89e
|
Simplify predicate CarryDefIsUsed.
llvm-svn: 74277
|
2009-06-26 06:10:18 +00:00 |
|
Chris Lattner
|
497d0ec530
|
fix a pasto.
llvm-svn: 74275
|
2009-06-26 05:56:49 +00:00 |
|
Chris Lattner
|
93af5249a1
|
propagate target operand flags through addressing mode selection.
llvm-svn: 74272
|
2009-06-26 05:51:45 +00:00 |
|
Nick Lewycky
|
ce25b7e7e6
|
Escape the name of the module since it comes from the file name and may include
invalid characters like backslashes on Windows. Patch by James Abbatiello!
llvm-svn: 74265
|
2009-06-26 04:33:37 +00:00 |
|
Devang Patel
|
a7a5664fbb
|
Let's ignore MDStrings also!
llvm-svn: 74255
|
2009-06-26 02:26:12 +00:00 |
|
Daniel Dunbar
|
f7c439154f
|
Fix may-be-used-uninitialized warning.
llvm-svn: 74253
|
2009-06-26 02:03:52 +00:00 |
|
Chris Lattner
|
05eb63598b
|
start adding logic in isel to determine asm printer semantics, step N of M.
llvm-svn: 74246
|
2009-06-26 00:43:52 +00:00 |
|
Evan Cheng
|
2eb1525e2a
|
Add a note about commuting conditional move.
llvm-svn: 74241
|
2009-06-26 00:28:48 +00:00 |
|
Evan Cheng
|
f23c8a5c8a
|
These are done / no longer applicable.
llvm-svn: 74239
|
2009-06-26 00:25:27 +00:00 |
|
Evan Cheng
|
4f0e461e97
|
Mark a bunch of instructions commutable.
llvm-svn: 74237
|
2009-06-26 00:19:44 +00:00 |
|
Evan Cheng
|
e45355b804
|
tst is also commutable.
llvm-svn: 74236
|
2009-06-26 00:19:07 +00:00 |
|
Owen Anderson
|
4aee97b0e3
|
Committed the wrong version in my last commit.
llvm-svn: 74235
|
2009-06-26 00:17:05 +00:00 |
|
Owen Anderson
|
22fb1f445e
|
Privatize a static variable.
llvm-svn: 74234
|
2009-06-26 00:15:27 +00:00 |
|
Evan Cheng
|
4ac765118d
|
Select ADC, SBC, and RSC instead of the ADCS, SBCS, and RSCS when the carry bit def is not used.
llvm-svn: 74228
|
2009-06-25 23:34:10 +00:00 |
|
David Goodwin
|
74414108e9
|
Use MVN for ~t2_so_imm immediates.
llvm-svn: 74223
|
2009-06-25 23:11:21 +00:00 |
|
David Goodwin
|
a0ed5f6847
|
Add Def/Use of CPSR for Thumb-1 instructions.
llvm-svn: 74219
|
2009-06-25 22:49:55 +00:00 |
|
Evan Cheng
|
331e7cc684
|
Unbreak mingw build. Patch by Viktor Kutuzov.
llvm-svn: 74212
|
2009-06-25 22:04:44 +00:00 |
|
Evan Cheng
|
0cced3daa8
|
ISD::ADDE / ISD::SUBE updates the carry bit so they should isle to ADCS and SBCS / RSCS.
llvm-svn: 74200
|
2009-06-25 20:59:23 +00:00 |
|
Owen Anderson
|
7e0ff6ab63
|
Privatize this map.
llvm-svn: 74189
|
2009-06-25 18:13:04 +00:00 |
|
Sanjiv Gupta
|
a68f1e8cbf
|
Added floating point conditional operations support via libcalls.
llvm-svn: 74187
|
2009-06-25 18:12:06 +00:00 |
|
Chris Lattner
|
2aaaf51beb
|
simplify shouldPrintPLT
llvm-svn: 74186
|
2009-06-25 17:58:52 +00:00 |
|
David Goodwin
|
c72bad36d7
|
Test commit
llvm-svn: 74185
|
2009-06-25 17:52:32 +00:00 |
|
Chris Lattner
|
8c562c2f76
|
Use target-specific machine operand flags to eliminate a gross hack
from the asmprinter.
llvm-svn: 74184
|
2009-06-25 17:38:33 +00:00 |
|
Chris Lattner
|
f70f8cc399
|
just eliminate the code entirely!
llvm-svn: 74183
|
2009-06-25 17:28:07 +00:00 |
|
Bob Wilson
|
38779c951a
|
Revert 74164. We'll want to use this method later.
llvm-svn: 74176
|
2009-06-25 16:03:07 +00:00 |
|
Sanjiv Gupta
|
f81b920608
|
Identify unconditional gotos and generate a page sel instructions before them.
llvm-svn: 74172
|
2009-06-25 11:03:14 +00:00 |
|
Bob Wilson
|
ef8fd818bf
|
Remove unused hasV6T2Ops method. We already have a separate feature to
identify Thumb2.
llvm-svn: 74164
|
2009-06-25 05:20:31 +00:00 |
|
Douglas Gregor
|
7841f61ced
|
Add missing dependencies to the CMake build system.
llvm-svn: 74161
|
2009-06-25 05:03:06 +00:00 |
|
Evan Cheng
|
a3be8cba60
|
Change thumb2 instruction definitions so if-converter so add predicate operands and / or flip the 's' bit to set the condition flag.
llvm-svn: 74158
|
2009-06-25 02:08:06 +00:00 |
|
Evan Cheng
|
e31583bf2a
|
Add thumb2 add sp.
llvm-svn: 74156
|
2009-06-25 01:21:30 +00:00 |
|
Chris Lattner
|
ec41c5f7ac
|
fix comments to be correct.
llvm-svn: 74154
|
2009-06-25 01:15:47 +00:00 |
|