Anton Korobeynikov
|
b1f61e24d1
|
Add carry producing / using versions of add / sub
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76316 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-18 14:16:06 +00:00 |
|
Anton Korobeynikov
|
6323a83e2c
|
Expand frem
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76315 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-18 13:44:25 +00:00 |
|
Anton Korobeynikov
|
6d94eff354
|
Turn abort() into unreachable
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76314 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-18 13:34:59 +00:00 |
|
Anton Korobeynikov
|
31e874490a
|
Turn few asserts into errors / unreachable's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76313 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-18 13:33:17 +00:00 |
|
Anton Korobeynikov
|
87e412b921
|
Handle vector returns
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76312 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-18 12:51:06 +00:00 |
|
Anton Korobeynikov
|
0cca06905b
|
Provide expansion for ct* intrinsics
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76311 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-18 12:26:13 +00:00 |
|
Anton Korobeynikov
|
e37a37de77
|
Expand sext_inreg for i1
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76310 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-18 12:20:36 +00:00 |
|
Anton Korobeynikov
|
bb496a358e
|
Add missed return
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76209 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-17 18:28:59 +00:00 |
|
Duncan Sands
|
3e11988c42
|
Avoid a compiler warning when assertions are turned off.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76176 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-17 12:25:14 +00:00 |
|
Daniel Dunbar
|
19c29f53f2
|
Fix 'may be used uninitialized' warning.
- Anton, please review.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76144 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-17 02:19:26 +00:00 |
|
Anton Korobeynikov
|
7df8462038
|
Unbreak
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76064 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:36:52 +00:00 |
|
Anton Korobeynikov
|
c975180624
|
Temporary disable 16 bit bswap
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76063 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:35:57 +00:00 |
|
Anton Korobeynikov
|
6d4b270e38
|
Add instruction formats and few opcodes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76062 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:35:20 +00:00 |
|
Anton Korobeynikov
|
6ff3f2c710
|
Add bswap patterns
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76061 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:34:52 +00:00 |
|
Anton Korobeynikov
|
21ddf779bf
|
Provide crazy pseudos for regpairs spills / reloads
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76060 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:34:15 +00:00 |
|
Anton Korobeynikov
|
9de2848fac
|
Handle long-disp stuff more consistently
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76059 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:33:52 +00:00 |
|
Anton Korobeynikov
|
74e2dc446c
|
All FP instructions have 12 bit memory displacement field
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76058 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:33:27 +00:00 |
|
Anton Korobeynikov
|
f1106c4247
|
Another predicate routine
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76057 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:33:01 +00:00 |
|
Anton Korobeynikov
|
27bf677e59
|
More helpers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76056 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:32:41 +00:00 |
|
Anton Korobeynikov
|
ae46db85a9
|
Add bunch of branch folding stuff
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76055 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:32:19 +00:00 |
|
Anton Korobeynikov
|
27766b548f
|
Add missed opcodes to short => long displacement conversion
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76054 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:31:52 +00:00 |
|
Anton Korobeynikov
|
c3e48b06fb
|
Cleanup
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76053 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:31:32 +00:00 |
|
Anton Korobeynikov
|
54681eca69
|
Fix logic inversion for RI-mode address selection
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76052 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:31:14 +00:00 |
|
Anton Korobeynikov
|
bb8a04806d
|
Expand 32-bit bitconverts via memory
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76050 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:30:29 +00:00 |
|
Anton Korobeynikov
|
f2fd8ea1c9
|
Fix incomin arg stack frame offset in case we need to generate stack frame
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76049 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:29:57 +00:00 |
|
Anton Korobeynikov
|
8b75813687
|
Fix instruction mnemonics for some fp_to_sint operations
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76048 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:29:26 +00:00 |
|
Anton Korobeynikov
|
c1a1e4adb7
|
i32 values are passed extended also on stack. Handle this in generic way
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76047 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:29:05 +00:00 |
|
Anton Korobeynikov
|
159ac63ba1
|
We definitely have 1-0 bools
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76046 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:28:46 +00:00 |
|
Anton Korobeynikov
|
5dd38de2c2
|
Revert the commit, it just hides the real bug
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76045 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:28:26 +00:00 |
|
Anton Korobeynikov
|
361a78756b
|
Out GR128 regclass is not a 'real' i128 one.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76044 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:27:53 +00:00 |
|
Anton Korobeynikov
|
628d419520
|
Add missed condbranch opcodes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76043 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:27:26 +00:00 |
|
Anton Korobeynikov
|
05a0b8bc66
|
Handle bitconverts
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76042 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:27:01 +00:00 |
|
Anton Korobeynikov
|
b6831cb044
|
Unbreak mvi and friends - emit only 'significant' part of the operand
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76041 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:26:38 +00:00 |
|
Anton Korobeynikov
|
98db78a28b
|
Expand fp_to_uint too
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76040 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:26:06 +00:00 |
|
Anton Korobeynikov
|
20d062fcc1
|
We don't have FP truncstores
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76039 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:25:46 +00:00 |
|
Anton Korobeynikov
|
a89430e468
|
Expand uint_to_fp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76038 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:25:30 +00:00 |
|
Anton Korobeynikov
|
4971e1ebb7
|
Emit proper rounding mode for fp_to_sint
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76037 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:25:12 +00:00 |
|
Anton Korobeynikov
|
3a9959fd4e
|
f32/f64 regs are stored on stack if we're short in FP regs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76036 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:24:57 +00:00 |
|
Anton Korobeynikov
|
75eef89ddb
|
Lower anyext to zext, 32-bit stuff does not have any implicit zero-extension side effects
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76035 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:24:41 +00:00 |
|
Anton Korobeynikov
|
1ada84daaf
|
Make FP zero to be legal FP immediate via LOAD ZERO
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76034 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:24:16 +00:00 |
|
Anton Korobeynikov
|
5753f47f5b
|
Loads are not two-address in any way
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76033 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:24:01 +00:00 |
|
Anton Korobeynikov
|
a61a4f669b
|
Add LOAD NEGATIVE instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76032 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:23:44 +00:00 |
|
Anton Korobeynikov
|
03f60001df
|
LOAD COMPLEMENT instruction is not really two-addr
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76031 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:23:30 +00:00 |
|
Anton Korobeynikov
|
6495063386
|
Add multiple add/sub instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76030 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:23:16 +00:00 |
|
Anton Korobeynikov
|
1733124507
|
Handle FP callee-saved regs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76029 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:23:01 +00:00 |
|
Anton Korobeynikov
|
85c5c3f138
|
Proper FP extloads
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76028 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:22:46 +00:00 |
|
Anton Korobeynikov
|
299dc78d67
|
Add proper PWS impdef's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76027 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:22:30 +00:00 |
|
Anton Korobeynikov
|
da723d7d91
|
Propagate FP select_cc to dag inserters
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76026 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:22:15 +00:00 |
|
Anton Korobeynikov
|
55e96fb1c6
|
Implement fp_to_sint
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76025 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:21:57 +00:00 |
|
Anton Korobeynikov
|
92ac82abb4
|
Implement FP regs spills / restores
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76024 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-07-16 14:21:41 +00:00 |
|