Anton Korobeynikov
|
aceb620de8
|
Typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71975 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-17 10:15:22 +00:00 |
|
Anton Korobeynikov
|
9c11d21d90
|
Add imm-reg and imm-mem patters for cmp on msp430
(imm is allowed to be source operand, not dest...)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71393 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-10 14:49:00 +00:00 |
|
Anton Korobeynikov
|
1cb0acee8a
|
Add 8 bit select
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71235 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-08 18:50:26 +00:00 |
|
Anton Korobeynikov
|
87e3caf819
|
Handle implicit zext in a better way. Shamelessly stolen from x86 backend.
Thanks for Dan Gohman for suggestion!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70782 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 15:50:18 +00:00 |
|
Anton Korobeynikov
|
1bb8cd723d
|
Make handling of conditional stuff much more straightforward
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70767 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:19:09 +00:00 |
|
Anton Korobeynikov
|
1fcfb6b6d2
|
Temporary disable imm patterns for cmp. Actually, all cmp-related stuff (select_cc, setcc, br_cc). needs to be rethought
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70766 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:18:50 +00:00 |
|
Anton Korobeynikov
|
bf8ef3f29d
|
Add 8bit shifts
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70759 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:16:37 +00:00 |
|
Anton Korobeynikov
|
e699d0f549
|
Handle logical shift right (at least I hope so :) )
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70758 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:16:17 +00:00 |
|
Anton Korobeynikov
|
e375a7c768
|
Handle anyext
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70757 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:15:57 +00:00 |
|
Anton Korobeynikov
|
49ebc22784
|
Implement bswap
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70753 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:15:03 +00:00 |
|
Anton Korobeynikov
|
5d59f68ade
|
Properly handle ExternalSymbol's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70752 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:14:46 +00:00 |
|
Anton Korobeynikov
|
b8f03c9578
|
Provide addc and subc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70748 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:13:34 +00:00 |
|
Anton Korobeynikov
|
ea54c9846b
|
Add left shift
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70747 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:13:17 +00:00 |
|
Anton Korobeynikov
|
824d8ddae8
|
Add direct branch
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70746 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:12:58 +00:00 |
|
Anton Korobeynikov
|
0af5af823b
|
It's error-prone to maintain two separate variants of asmprinting stuff, one of which is even used. Drop second (aka 'intel') variant of operands. It can be added later, if needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70745 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:12:37 +00:00 |
|
Anton Korobeynikov
|
8b528e52ee
|
Lower select with custom inserted and make condjumps generic
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70744 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:12:23 +00:00 |
|
Anton Korobeynikov
|
ed1a51af37
|
Add first draft for conditions, conditional branches, etc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70743 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:12:06 +00:00 |
|
Anton Korobeynikov
|
d5047cb9f7
|
Add code for save/restore of callee-saved registers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70739 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:11:04 +00:00 |
|
Anton Korobeynikov
|
40477317f3
|
Proper handle loading of effective address of stack slot stuff
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70737 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:10:26 +00:00 |
|
Anton Korobeynikov
|
cf14ae5500
|
Reverse order of memory arguments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70734 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:09:40 +00:00 |
|
Anton Korobeynikov
|
aecfa7897f
|
Remove bogus pattern
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70733 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:09:24 +00:00 |
|
Anton Korobeynikov
|
3513ca81c6
|
Add lowering for global address nodes. Not pretty efficient though.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70730 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:08:33 +00:00 |
|
Anton Korobeynikov
|
3c2684d136
|
Some early full call lowering draft for direct calls
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70729 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:08:13 +00:00 |
|
Anton Korobeynikov
|
b561264d2b
|
Add call frame setup instruction elimination and lowerid for bunch of call-related stuff.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70728 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:07:54 +00:00 |
|
Anton Korobeynikov
|
4428885c5a
|
Add CALL lowering.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70727 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:07:31 +00:00 |
|
Anton Korobeynikov
|
01e0e8d119
|
Add bunch of mem-whatever patterns
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70726 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:07:10 +00:00 |
|
Anton Korobeynikov
|
2682bf5979
|
Add bunch of reg-mem inst patterns
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70725 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:06:46 +00:00 |
|
Anton Korobeynikov
|
54f30d3fc9
|
Add normal and trunc stores
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70724 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:06:26 +00:00 |
|
Anton Korobeynikov
|
36b6e533c1
|
Basic support for mem=>reg moves
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70723 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:06:03 +00:00 |
|
Anton Korobeynikov
|
51c31d6888
|
Add 8-bit insts. zext behaviour is not modelled yet
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70722 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:05:42 +00:00 |
|
Anton Korobeynikov
|
cf9adf2cbb
|
Add 8-bit regclass and pattern for sext_inreg
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70721 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:05:22 +00:00 |
|
Anton Korobeynikov
|
0fc32dae8f
|
Add pattern for OR
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70720 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:05:00 +00:00 |
|
Anton Korobeynikov
|
6ee626a1c1
|
Add reg-imm variants
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70719 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:04:41 +00:00 |
|
Anton Korobeynikov
|
c8166ac760
|
Add hint to nop
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70718 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:04:23 +00:00 |
|
Anton Korobeynikov
|
0ba0a89c6b
|
Add more instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70717 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:04:06 +00:00 |
|
Anton Korobeynikov
|
d2c94ae49e
|
Add dummy lowering for shifts
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70715 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:03:33 +00:00 |
|
Anton Korobeynikov
|
8d7bb3998b
|
We're not going to spend 100% of time in interrupts, do we? :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70713 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:02:57 +00:00 |
|
Anton Korobeynikov
|
431beb5fa7
|
Add simple reg-reg add.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70712 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:02:39 +00:00 |
|
Anton Korobeynikov
|
1df221f2bb
|
Add code enough for emission of reg-reg and reg-imm moves. This allows us to compile "ret i16 0" properly!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70710 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 13:02:04 +00:00 |
|
Anton Korobeynikov
|
fd1b7c778c
|
Add proper ISD::RET lowering
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70703 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 12:59:50 +00:00 |
|
Anton Korobeynikov
|
f2c3e179ec
|
Dummy MSP430 backend
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70694 91177308-0d34-0410-b5e6-96231b3b80d8
|
2009-05-03 12:57:15 +00:00 |
|