diff options
Diffstat (limited to 'arch/mips/mm/uasm-mips.c')
| -rw-r--r-- | arch/mips/mm/uasm-mips.c | 17 | 
1 files changed, 16 insertions, 1 deletions
diff --git a/arch/mips/mm/uasm-mips.c b/arch/mips/mm/uasm-mips.c index 0c724589854..6708a2dbf93 100644 --- a/arch/mips/mm/uasm-mips.c +++ b/arch/mips/mm/uasm-mips.c @@ -15,7 +15,6 @@  #include <linux/kernel.h>  #include <linux/types.h> -#include <linux/init.h>  #include <asm/inst.h>  #include <asm/elf.h> @@ -68,6 +67,7 @@ static struct insn insn_table[] = {  	{ insn_daddu, M(spec_op, 0, 0, 0, 0, daddu_op), RS | RT | RD },  	{ insn_dinsm, M(spec3_op, 0, 0, 0, 0, dinsm_op), RS | RT | RD | RE },  	{ insn_dins, M(spec3_op, 0, 0, 0, 0, dins_op), RS | RT | RD | RE }, +	{ insn_divu, M(spec_op, 0, 0, 0, 0, divu_op), RS | RT },  	{ insn_dmfc0, M(cop0_op, dmfc_op, 0, 0, 0, 0), RT | RD | SET},  	{ insn_dmtc0, M(cop0_op, dmtc_op, 0, 0, 0, 0), RT | RD | SET},  	{ insn_drotr32, M(spec_op, 1, 0, 0, 0, dsrl32_op), RT | RD | RE }, @@ -83,17 +83,23 @@ static struct insn insn_table[] = {  	{ insn_ins, M(spec3_op, 0, 0, 0, 0, ins_op), RS | RT | RD | RE },  	{ insn_j,  M(j_op, 0, 0, 0, 0, 0),  JIMM },  	{ insn_jal,  M(jal_op, 0, 0, 0, 0, 0),	JIMM }, +	{ insn_jalr,  M(spec_op, 0, 0, 0, 0, jalr_op), RS | RD },  	{ insn_j,  M(j_op, 0, 0, 0, 0, 0),  JIMM },  	{ insn_jr,  M(spec_op, 0, 0, 0, 0, jr_op),  RS }, +	{ insn_lb, M(lb_op, 0, 0, 0, 0, 0), RS | RT | SIMM },  	{ insn_ld,  M(ld_op, 0, 0, 0, 0, 0),  RS | RT | SIMM },  	{ insn_ldx, M(spec3_op, 0, 0, 0, ldx_op, lx_op), RS | RT | RD }, +	{ insn_lh,  M(lh_op, 0, 0, 0, 0, 0),  RS | RT | SIMM },  	{ insn_lld,  M(lld_op, 0, 0, 0, 0, 0),	RS | RT | SIMM },  	{ insn_ll,  M(ll_op, 0, 0, 0, 0, 0),  RS | RT | SIMM },  	{ insn_lui,  M(lui_op, 0, 0, 0, 0, 0),	RT | SIMM },  	{ insn_lw,  M(lw_op, 0, 0, 0, 0, 0),  RS | RT | SIMM },  	{ insn_lwx, M(spec3_op, 0, 0, 0, lwx_op, lx_op), RS | RT | RD },  	{ insn_mfc0,  M(cop0_op, mfc_op, 0, 0, 0, 0),  RT | RD | SET}, +	{ insn_mfhi,  M(spec_op, 0, 0, 0, 0, mfhi_op), RD }, +	{ insn_mflo,  M(spec_op, 0, 0, 0, 0, mflo_op), RD },  	{ insn_mtc0,  M(cop0_op, mtc_op, 0, 0, 0, 0),  RT | RD | SET}, +	{ insn_mul, M(spec2_op, 0, 0, 0, 0, mul_op), RS | RT | RD},  	{ insn_ori,  M(ori_op, 0, 0, 0, 0, 0),	RS | RT | UIMM },  	{ insn_or,  M(spec_op, 0, 0, 0, 0, or_op),  RS | RT | RD },  	{ insn_pref,  M(pref_op, 0, 0, 0, 0, 0),  RS | RT | SIMM }, @@ -103,17 +109,26 @@ static struct insn insn_table[] = {  	{ insn_sc,  M(sc_op, 0, 0, 0, 0, 0),  RS | RT | SIMM },  	{ insn_sd,  M(sd_op, 0, 0, 0, 0, 0),  RS | RT | SIMM },  	{ insn_sll,  M(spec_op, 0, 0, 0, 0, sll_op),  RT | RD | RE }, +	{ insn_sllv,  M(spec_op, 0, 0, 0, 0, sllv_op),  RS | RT | RD }, +	{ insn_slt,  M(spec_op, 0, 0, 0, 0, slt_op),  RS | RT | RD }, +	{ insn_sltiu, M(sltiu_op, 0, 0, 0, 0, 0), RS | RT | SIMM }, +	{ insn_sltu, M(spec_op, 0, 0, 0, 0, sltu_op), RS | RT | RD },  	{ insn_sra,  M(spec_op, 0, 0, 0, 0, sra_op),  RT | RD | RE },  	{ insn_srl,  M(spec_op, 0, 0, 0, 0, srl_op),  RT | RD | RE }, +	{ insn_srlv,  M(spec_op, 0, 0, 0, 0, srlv_op),  RS | RT | RD },  	{ insn_subu,  M(spec_op, 0, 0, 0, 0, subu_op),	RS | RT | RD },  	{ insn_sw,  M(sw_op, 0, 0, 0, 0, 0),  RS | RT | SIMM }, +	{ insn_sync, M(spec_op, 0, 0, 0, 0, sync_op), RE },  	{ insn_syscall, M(spec_op, 0, 0, 0, 0, syscall_op), SCIMM},  	{ insn_tlbp,  M(cop0_op, cop_op, 0, 0, 0, tlbp_op),  0 },  	{ insn_tlbr,  M(cop0_op, cop_op, 0, 0, 0, tlbr_op),  0 },  	{ insn_tlbwi,  M(cop0_op, cop_op, 0, 0, 0, tlbwi_op),  0 },  	{ insn_tlbwr,  M(cop0_op, cop_op, 0, 0, 0, tlbwr_op),  0 }, +	{ insn_wait, M(cop0_op, cop_op, 0, 0, 0, wait_op), SCIMM }, +	{ insn_wsbh, M(spec3_op, 0, 0, 0, wsbh_op, bshfl_op), RT | RD },  	{ insn_xori,  M(xori_op, 0, 0, 0, 0, 0),  RS | RT | UIMM },  	{ insn_xor,  M(spec_op, 0, 0, 0, 0, xor_op),  RS | RT | RD }, +	{ insn_yield, M(spec3_op, 0, 0, 0, 0, yield_op), RS | RD },  	{ insn_invalid, 0, 0 }  };  | 
