162 |
162 |
163 // extended mnemonics |
163 // extended mnemonics |
164 inline void Assembler::li( Register d, int si16) { Assembler::addi_r0ok( d, R0, si16); } |
164 inline void Assembler::li( Register d, int si16) { Assembler::addi_r0ok( d, R0, si16); } |
165 inline void Assembler::lis( Register d, int si16) { Assembler::addis_r0ok(d, R0, si16); } |
165 inline void Assembler::lis( Register d, int si16) { Assembler::addis_r0ok(d, R0, si16); } |
166 inline void Assembler::addir(Register d, int si16, Register a) { Assembler::addi(d, a, si16); } |
166 inline void Assembler::addir(Register d, int si16, Register a) { Assembler::addi(d, a, si16); } |
|
167 inline void Assembler::subi( Register d, Register a, int si16) { Assembler::addi(d, a, -si16); } |
167 |
168 |
168 // PPC 1, section 3.3.9, Fixed-Point Compare Instructions |
169 // PPC 1, section 3.3.9, Fixed-Point Compare Instructions |
169 inline void Assembler::cmpi( ConditionRegister f, int l, Register a, int si16) { emit_int32( CMPI_OPCODE | bf(f) | l10(l) | ra(a) | simm(si16,16)); } |
170 inline void Assembler::cmpi( ConditionRegister f, int l, Register a, int si16) { emit_int32( CMPI_OPCODE | bf(f) | l10(l) | ra(a) | simm(si16,16)); } |
170 inline void Assembler::cmp( ConditionRegister f, int l, Register a, Register b) { emit_int32( CMP_OPCODE | bf(f) | l10(l) | ra(a) | rb(b)); } |
171 inline void Assembler::cmp( ConditionRegister f, int l, Register a, Register b) { emit_int32( CMP_OPCODE | bf(f) | l10(l) | ra(a) | rb(b)); } |
171 inline void Assembler::cmpli( ConditionRegister f, int l, Register a, int ui16) { emit_int32( CMPLI_OPCODE | bf(f) | l10(l) | ra(a) | uimm(ui16,16)); } |
172 inline void Assembler::cmpli( ConditionRegister f, int l, Register a, int ui16) { emit_int32( CMPLI_OPCODE | bf(f) | l10(l) | ra(a) | uimm(ui16,16)); } |