Jozef Kolek
4468947fce
[mips][microMIPS] Make usage of NOT16 by code generator
...
Differential Revision: http://reviews.llvm.org/D7748
llvm-svn: 231963
2015-03-11 20:28:31 +00:00
Jozef Kolek
c925808ee5
[mips][microMIPS] Make usage of ADDU16 and SUBU16 by code generator
...
Differential Revision: http://reviews.llvm.org/D7609
llvm-svn: 231249
2015-03-04 15:47:42 +00:00
Jozef Kolek
0365675522
Reversed revision 229706. The reason is regression, which is caused by the
...
usage of instruction ADDU16 by CodeGen. For this instruction an improper
register is allocated, i.e. the register that is not from register set defined
for the instruction.
llvm-svn: 230053
2015-02-20 20:26:52 +00:00
Jozef Kolek
3c6724f442
[mips][microMIPS] Make usage of ADDU16 and SUBU16 by code generator
...
Differential Revision: http://reviews.llvm.org/D7609
llvm-svn: 229706
2015-02-18 17:33:56 +00:00
Jozef Kolek
1fd6548297
[mips][microMIPS] Implement JALX instruction
...
Differential Revision: http://reviews.llvm.org/D5047
llvm-svn: 229702
2015-02-18 17:15:48 +00:00
Zoran Jovanovic
416886793f
[mips][microMIPS] Implement movep instruction
...
Differential Revision: http://reviews.llvm.org/D7465
llvm-svn: 228703
2015-02-10 16:36:20 +00:00
Jozef Kolek
d68d424abf
[mips][microMIPS] Fix disassembling of 16-bit microMIPS instructions LWM16 and SWM16
...
Differential Revision: http://reviews.llvm.org/D7436
llvm-svn: 228683
2015-02-10 12:41:13 +00:00
Zoran Jovanovic
5a1a780c2a
[mips][microMIPS] Implement CodeGen support for SW16 and LW16 instructions
...
Differential Revision: http://reviews.llvm.org/D6581
llvm-svn: 228149
2015-02-04 15:43:17 +00:00
Zoran Jovanovic
14c567be90
[mips][microMIPS] Implement SWM and LWM aliases
...
Differential Revision: http://reviews.llvm.org/D5820
llvm-svn: 227373
2015-01-28 21:52:27 +00:00
Jozef Kolek
e10a02ecf0
[mips][microMIPS] Implement LWGP instruction
...
Differential Revision: http://reviews.llvm.org/D6650
llvm-svn: 227325
2015-01-28 17:27:26 +00:00
Jozef Kolek
5cfebdde2b
[mips][microMIPS] MicroMIPS 16-bit unconditional branch instruction B
...
Implement microMIPS 16-bit unconditional branch instruction B.
Implemented 16-bit microMIPS unconditional instruction has real name B16, and
B is an alias which expands to either B16 or BEQ according to the rules:
b 256 --> b16 256 # R_MICROMIPS_PC10_S1
b 12256 --> beq $zero, $zero, 12256 # R_MICROMIPS_PC16_S1
b label --> beq $zero, $zero, label # R_MICROMIPS_PC16_S1
Differential Revision: http://reviews.llvm.org/D3514
llvm-svn: 226657
2015-01-21 12:39:30 +00:00
Jozef Kolek
2c6d73207e
[mips][microMIPS] Implement ADDIUPC instruction
...
Differential Revision: http://reviews.llvm.org/D6582
llvm-svn: 226656
2015-01-21 12:10:11 +00:00
Jozef Kolek
0d49117769
Reverted revision 226577.
...
llvm-svn: 226595
2015-01-20 19:29:28 +00:00
Jozef Kolek
45f7f9c1ab
[mips][microMIPS] MicroMIPS 16-bit unconditional branch instruction B
...
Implement microMIPS 16-bit unconditional branch instruction B.
Implemented 16-bit microMIPS unconditional instruction has real name B16, and
B is an alias which expands to either B16 or BEQ according to the rules:
b 256 --> b16 256 # R_MICROMIPS_PC10_S1
b 12256 --> beq $zero, $zero, 12256 # R_MICROMIPS_PC16_S1
b label --> beq $zero, $zero, label # R_MICROMIPS_PC16_S1
Differential Revision: http://reviews.llvm.org/D3514
llvm-svn: 226577
2015-01-20 16:45:27 +00:00
Jozef Kolek
9761e96b01
[mips][microMIPS] Implement BEQZ16 and BNEZ16 instructions
...
Differential Revision: http://reviews.llvm.org/D5271
llvm-svn: 225627
2015-01-12 12:03:34 +00:00
Jozef Kolek
ab6d1cce3e
[mips][microMIPS] Implement CACHE, PREF, SSNOP, EHB and PAUSE instructions
...
Differential Revision: http://reviews.llvm.org/D5204
llvm-svn: 224785
2014-12-23 19:55:34 +00:00
Jozef Kolek
12c6982b3b
[mips][microMIPS] Implement LWSP and SWSP instructions
...
Differential Revision: http://reviews.llvm.org/D6416
llvm-svn: 224771
2014-12-23 16:16:33 +00:00
Zoran Jovanovic
2deca34803
[mips][microMIPS] Implement SWP and LWP instructions
...
Differential Revision: http://reviews.llvm.org/D5667
llvm-svn: 224338
2014-12-16 14:59:10 +00:00
Jozef Kolek
a330a47427
[mips][microMIPS] Implement CodeGen support for LI16 instruction.
...
Differential Revision: http://reviews.llvm.org/D5840
llvm-svn: 224017
2014-12-11 13:56:23 +00:00
Vladimir Medic
b682ddf33a
The andi16, addiusp and jraddiusp micromips instructions were missing dedicated decoder methods in MipsDisassembler.cpp to properly decode immediate operands. These methods are added together with corresponding tests.
...
llvm-svn: 223006
2014-12-01 11:12:04 +00:00
Jozef Kolek
c7e220f6e0
[mips][microMIPS] Implement NOP aliases
...
This patch implements microMIPS 16-bit (MOVE16 $0, $0) and
32-bit (SLL $0, $0, 0) NOP aliases.
http://reviews.llvm.org/D6440
llvm-svn: 222953
2014-11-29 13:29:24 +00:00
Zoran Jovanovic
f9a02500b6
[mips][microMIPS] Implement SWM16 and LWM16 instructions
...
Differential Revision: http://reviews.llvm.org/D5579
llvm-svn: 222901
2014-11-27 18:28:59 +00:00
Jozef Kolek
56a6a7d3bd
[mips][microMIPS] Implement BREAK16 and SDBBP16 instructions
...
Patch by Radovan Obradovic.
Differential Revision: http://reviews.llvm.org/D5048
llvm-svn: 222900
2014-11-27 18:18:42 +00:00
Jozef Kolek
aa2b9278fe
[mips][microMIPS] Implement disassembler support for 16-bit instructions LI16, ADDIUR1SP, ADDIUR2 and ADDIUS5
...
Differential Revision: http://reviews.llvm.org/D6419
llvm-svn: 222887
2014-11-27 14:41:44 +00:00
Jozef Kolek
315e7eca1b
[mips][microMIPS] Implement disassembler support for 16-bit instructions LBU16, LHU16, LW16, SB16, SH16 and SW16
...
Differential Revision: http://reviews.llvm.org/D6405
llvm-svn: 222847
2014-11-26 18:56:38 +00:00
Jozef Kolek
11bdb8bf33
[mips][microMIPS] Fix JRADDIUSP instruction
...
Fix JRADDIUSP instruction, remove delay slot flag because this instruction
doesn't have delay slot.
Differential Revision: http://reviews.llvm.org/D6365
llvm-svn: 222658
2014-11-24 16:14:10 +00:00
Jozef Kolek
e8c9d1eaf7
[mips][microMIPS] Implement LBU16, LHU16, LW16, SB16, SH16 and SW16 instructions
...
Differential Revision: http://reviews.llvm.org/D5122
llvm-svn: 222653
2014-11-24 14:39:13 +00:00
Zoran Jovanovic
a4c4b5fc01
[mips][micromips] Implement SWM32 and LWM32 instructions
...
Differential Revision: http://reviews.llvm.org/D5519
llvm-svn: 222367
2014-11-19 16:44:02 +00:00
Jozef Kolek
4d55b4d768
[mips][microMIPS] Implement CodeGen support for 16-bit instruction ADDIUR2.
...
Differential Revision: http://reviews.llvm.org/D5800
llvm-svn: 222352
2014-11-19 13:23:58 +00:00
Jozef Kolek
73f64eac8c
[mips][microMIPS] Implement CodeGen support for ADDIUS5 instruction.
...
Differential Revision: http://reviews.llvm.org/D5799
llvm-svn: 222351
2014-11-19 13:11:09 +00:00
Jozef Kolek
5f95dd2b65
[mips][microMIPS] Implement LWXS instruction.
...
Differential Revision: http://reviews.llvm.org/D5407
llvm-svn: 222348
2014-11-19 11:39:12 +00:00
Jozef Kolek
dc62fc4a8f
[mips][microMIPS] Implement SDBBP and RDHWR instructions.
...
Differential Revision: http://reviews.llvm.org/D5240
llvm-svn: 222347
2014-11-19 11:25:50 +00:00
Zoran Jovanovic
fd888630b5
[mips][micromips] Add predicate 'InMicroMips' at CodeGen patterns for microMIPS instructions
...
Differential Revision: http://reviews.llvm.org/D6198
llvm-svn: 221780
2014-11-12 13:30:10 +00:00
Zoran Jovanovic
06c9d55123
ps][microMIPS] Implement CodeGen support for ANDI16 instruction
...
llvm-svn: 221371
2014-11-05 17:43:00 +00:00
Zoran Jovanovic
9f99723d92
ps][microMIPS] Implement CodeGen support for SLL16 and SRL16 instructions
...
llvm-svn: 221369
2014-11-05 17:38:31 +00:00
Zoran Jovanovic
8853171b46
[mips][microMIPS] Implement ANDI16 instruction
...
llvm-svn: 221367
2014-11-05 17:31:00 +00:00
Zoran Jovanovic
a87308c84c
Reverted revisions 221351, 221352 and 221353.
...
llvm-svn: 221354
2014-11-05 16:19:59 +00:00
Zoran Jovanovic
3038500f3b
[mips][microMIPS] Implement CodeGen support for ANDI16 instruction
...
Differential Revision: http://reviews.llvm.org/D5797
llvm-svn: 221353
2014-11-05 15:54:05 +00:00
Zoran Jovanovic
f4f5f1e272
[mips][microMIPS] Implement CodeGen support for SLL16 and SRL16 instructions
...
Differential Revision: http://reviews.llvm.org/D5933
llvm-svn: 221352
2014-11-05 15:46:53 +00:00
Zoran Jovanovic
e548bb0634
[mips][microMIPS] Implement ANDI16 instruction
...
Differential Revision: http://reviews.llvm.org/D5163
llvm-svn: 221351
2014-11-05 15:39:41 +00:00
Zoran Jovanovic
42b8444372
[mips][microMIPS] Implement ADDIUR1SP instruction
...
Differential Revision: http://reviews.llvm.org/D5153
llvm-svn: 220477
2014-10-23 11:13:59 +00:00
Zoran Jovanovic
bac3619b29
ps][microMIPS] Implement ADDIUR2 instruction
...
Differential Revision: http://reviews.llvm.org/D5151
llvm-svn: 220476
2014-10-23 11:06:34 +00:00
Zoran Jovanovic
9bda2f1926
ps][microMIPS] Implement LI16 instruction
...
Differential Revision: http://reviews.llvm.org/D5149
llvm-svn: 220475
2014-10-23 10:59:24 +00:00
Zoran Jovanovic
4a00fdc2e3
[mips][microMIPS] Implement CodeGen support for SLL16 and SRL16 instructions
...
Differential Revision: http://reviews.llvm.org/D5774
llvm-svn: 220474
2014-10-23 10:42:01 +00:00
Zoran Jovanovic
592239d498
[mips][microMIPS] Implement ADDU16 and SUBU16 instructions
...
Differential Revision: http://reviews.llvm.org/D5118
llvm-svn: 220276
2014-10-21 08:44:58 +00:00
Zoran Jovanovic
81ceebc56e
[mips][microMIPS] Implement AND16, NOT16, OR16 and XOR16 instructions
...
Differential Revision: http://reviews.llvm.org/D5117
llvm-svn: 220275
2014-10-21 08:32:40 +00:00
Zoran Jovanovic
98bd58ca33
[mips][microMIPS] Implement ADDIUSP instruction
...
Differential Revision: http://reviews.llvm.org/D5084
llvm-svn: 219500
2014-10-10 14:37:30 +00:00
Zoran Jovanovic
95e14e711d
[mips][microMIPS] Implement JR16 instruction
...
Differential Revision: http://reviews.llvm.org/D5062
llvm-svn: 219498
2014-10-10 14:02:44 +00:00
Zoran Jovanovic
b26f889afa
[mips][microMIPS] Implement ADDIUS5 instruction
...
Differential Revision: http://reviews.llvm.org/D5049
llvm-svn: 219495
2014-10-10 13:45:34 +00:00
Zoran Jovanovic
b39a174f11
ps][microMIPS] Implement JRC instruction
...
Differential Revision: http://reviews.llvm.org/D5045
llvm-svn: 219494
2014-10-10 13:31:18 +00:00