Lines Matching refs:code
8 // - Redistributions of source code must retain the above copyright notice,
33 // The original source code covered by the above license above has been
52 // code generation.
184 // Patch the code at the current address with the supplied instructions.
191 // Indicate that code has changed.
196 // Patch the code at the current PC with a call to the target address.
199 // Patch the code at the current address with a call to the target.
210 // Verify all Objects referred by code are NOT in new space.
284 S = 1 << 20, // set condition code (or leave unchanged)
326 al | 4 * B21 | 4 | LeaveCC | I | sp.code() * B16 | sp.code() * B12;
330 al | B26 | 4 | NegPreIndex | sp.code() * B16;
334 al | B26 | L | 4 | PostIndex | sp.code() * B16;
336 const Instr kMovLrPc = al | 13*B21 | pc.code() | lr.code() * B12;
338 const Instr kLdrPCPattern = al | B26 | L | pc.code() * B16;
403 // Setup code descriptor.
419 // Labels refer to positions in the (to be) generated code.
423 // generated code. pos() is the position the label refers to.
425 // Linked labels refer to unknown positions in the code
430 // The link chain is terminated by a negative code position (must be aligned)
438 return instr - (Code::kHeaderSize - kHeapObjectTag);
455 // Make label relative to Code* of generated Code object.
456 instr_at_put(pos, target_pos + (Code::kHeaderSize - kHeapObjectTag));
588 // Low-level code emission routines depending on the addressing mode.
647 // condition code), then replace it with a 'ldr rd, [pc]'.
662 instr |= x.shift_imm_*B7 | x.shift_op_ | x.rm_.code();
666 instr |= x.rs_.code()*B8 | x.shift_op_ | B4 | x.rm_.code();
668 emit(instr | rn.code()*B16 | rd.code()*B12);
701 instr |= B25 | x.shift_imm_*B7 | x.shift_op_ | x.rm_.code();
704 emit(instr | am | x.rn_.code()*B16 | rd.code()*B12);
741 instr |= x.rm_.code();
744 emit(instr | am | x.rn_.code()*B16 | rd.code()*B12);
752 emit(instr | rn.code()*B16 | rl);
777 emit(instr | am | x.rn_.code()*B16 | crd.code()*B12 | offset_8);
812 instr_at_put(at_offset, target_pos + (Code::kHeaderSize - kHeapObjectTag));
825 // Dead code is a good location to emit the constant pool.
851 emit(cond | B24 | B21 | 15*B16 | 15*B12 | 15*B8 | 3*B4 | target.code());
858 emit(cond | B24 | B21 | 15*B16 | 15*B12 | 15*B8 | B4 | target.code());
874 dst.code()*B12 | src2.imm32_*B7 | 0x5*B4 | src1.code());
992 emit(cond | A | s | dst.code()*B16 | srcA.code()*B12 |
993 src2.code()*B8 | B7 | B4 | src1.code());
1001 emit(cond | s | dst.code()*B16 | src2.code()*B8 | B7 | B4 | src1.code());
1013 emit(cond | B23 | B22 | A | s | dstH.code()*B16 | dstL.code()*B12 |
1014 src2.code()*B8 | B7 | B4 | src1.code());
1026 emit(cond | B23 | B22 | s | dstH.code()*B16 | dstL.code()*B12 |
1027 src2.code()*B8 | B7 | B4 | src1.code());
1039 emit(cond | B23 | A | s | dstH.code()*B16 | dstL.code()*B12 |
1040 src2.code()*B8 | B7 | B4 | src1.code());
1052 emit(cond | B23 | s | dstH.code()*B16 | dstL.code()*B12 |
1053 src2.code()*B8 | B7 | B4 | src1.code());
1061 emit(cond | B24 | B22 | B21 | 15*B16 | dst.code()*B12 |
1062 15*B8 | B4 | src.code());
1069 emit(cond | B24 | s | 15*B16 | dst.code()*B12);
1092 instr = src.rm_.code();
1114 instr_at(pc_ - 1 * kInstrSize) == (kPopRegPattern | dst.code() * B12) &&
1115 instr_at(pc_ - 2 * kInstrSize) == (kPushRegPattern | dst.code() * B12)) {
1135 instr_at(pc_ - 1 * kInstrSize) == (kPushRegPattern | src.code() * B12) &&
1138 emit(al | B26 | 0 | Offset | sp.code() * B16 | src.code() * B12);
1210 emit(cond | P | base.code()*B16 | dst.code()*B12 |
1211 B7 | B4 | src.code());
1221 emit(cond | P | B | base.code()*B16 | dst.code()*B12 |
1222 B7 | B4 | src.code());
1260 emit(cond | B27 | B26 | B25 | (opcode_1 & 15)*B20 | crn.code()*B16 |
1261 crd.code()*B12 | coproc*B8 | (opcode_2 & 7)*B5 | crm.code());
1283 emit(cond | B27 | B26 | B25 | (opcode_1 & 7)*B21 | crn.code()*B16 |
1284 rd.code()*B12 | coproc*B8 | (opcode_2 & 7)*B5 | B4 | crm.code());
1306 emit(cond | B27 | B26 | B25 | (opcode_1 & 7)*B21 | L | crn.code()*B16 |
1307 rd.code()*B12 | coproc*B8 | (opcode_2 & 7)*B5 | B4 | crm.code());
1338 emit(cond | B27 | B26 | U | l | L | rn.code()*B16 | crd.code()*B12 |
1377 emit(cond | B27 | B26 | U | l | rn.code()*B16 | crd.code()*B12 |
1410 emit(cond | 0xD9*B20 | base.code()*B16 | dst.code()*B12 |
1425 emit(cond | 0xD8*B20 | base.code()*B16 | src.code()*B12 |
1440 emit(cond | 0xC*B24 | B22 | src2.code()*B16 |
1441 src1.code()*B12 | 0xB*B8 | B4 | dst.code());
1455 emit(cond | 0xC*B24 | B22 | B20 | dst2.code()*B16 |
1456 dst1.code()*B12 | 0xB*B8 | B4 | src.code());
1469 emit(cond | 0xE*B24 | (dst.code() >> 1)*B16 |
1470 src.code()*B12 | 0xA*B8 | (0x1 & dst.code())*B7 | B4);
1483 emit(cond | 0xE*B24 | B20 | (src.code() >> 1)*B16 |
1484 dst.code()*B12 | 0xA*B8 | (0x1 & src.code())*B7 | B4);
1497 dst.code()*B12 | 0x5*B9 | B8 | B7 | B6 |
1498 (0x1 & src.code())*B5 | (src.code() >> 1));
1510 emit(cond | 0xE*B24 | B23 |(0x1 & dst.code())*B22 |
1511 0x3*B20 | B19 | 0x5*B16 | (dst.code() >> 1)*B12 |
1512 0x5*B9 | B8 | B7 | B6 | src.code());
1526 emit(cond | 0xE*B24 | 0x3*B20 | src1.code()*B16 |
1527 dst.code()*B12 | 0x5*B9 | B8 | src2.code());
1541 emit(cond | 0xE*B24 | 0x3*B20 | src1.code()*B16 |
1542 dst.code()*B12 | 0x5*B9 | B8 | B6 | src2.code());
1556 emit(cond | 0xE*B24 | 0x2*B20 | src1.code()*B16 |
1557 dst.code()*B12 | 0x5*B9 | B8 | src2.code());
1571 emit(cond | 0xE*B24 | B23 | src1.code()*B16 |
1572 dst.code()*B12 | 0x5*B9 | B8 | src2.code());
1586 src1.code()*B12 | 0x5*B9 | B8 | B6 | src2.code());
1596 dst.code()*B12 | 0xA*B8 | B4);
1692 if (!own_buffer_) FATAL("external code buffer is too small");
1726 // None of our relocation types are pc relative pointing outside the code
1727 // buffer nor pc absolute pointing inside the code buffer, so there is no need
1745 // Adjust code for new modes.
1788 // emitted (e.g. --debug-code and many static references).
1793 // the code generation will test every kCheckConstIntervalInst.
1818 // Check that the code buffer is large enough before emitting the constant
1852 (2*B25 | P | U | pc.code()*B16));