Home
last modified time | relevance | path

Searched refs:disp (Results 1 – 11 of 11) sorted by relevance

/art/dex2oat/linker/arm/
Drelative_patcher_thumb2.cc109 uint32_t disp = target_offset - (patch_offset + kPcDisplacement); in PatchBakerReadBarrierBranch() local
110 DCHECK((disp >> 20) == 0u || (disp >> 20) == 0xfffu); // 21-bit signed. in PatchBakerReadBarrierBranch()
111 insn |= ((disp << (26 - 20)) & 0x04000000u) | // Shift bit 20 to 26, "S". in PatchBakerReadBarrierBranch()
112 ((disp >> (19 - 11)) & 0x00000800u) | // Shift bit 19 to 13, "J1". in PatchBakerReadBarrierBranch()
113 ((disp >> (18 - 13)) & 0x00002000u) | // Shift bit 18 to 11, "J2". in PatchBakerReadBarrierBranch()
114 ((disp << (16 - 12)) & 0x003f0000u) | // Shift bits 12-17 to 16-25, "imm6". in PatchBakerReadBarrierBranch()
115 ((disp >> (1 - 0)) & 0x000007ffu); // Shift bits 1-12 to 0-11, "imm11". in PatchBakerReadBarrierBranch()
/art/compiler/utils/x86/
Dassembler_x86.h76 int32_t disp() const { in disp() function
121 void SetDisp8(int8_t disp) { in SetDisp8() argument
123 encoding_[length_++] = static_cast<uint8_t>(disp); in SetDisp8()
124 disp_ = disp; in SetDisp8()
127 void SetDisp32(int32_t disp) { in SetDisp32() argument
129 int disp_size = sizeof(disp); in SetDisp32()
130 memmove(&encoding_[length_], &disp, disp_size); in SetDisp32()
132 disp_ = disp; in SetDisp32()
167 Address(Register base_in, int32_t disp) { in Address() argument
168 Init(base_in, disp); in Address()
[all …]
Dassembler_x86_test.cc1365 for (int32_t disp : displacements) { // extra displacement in TEST_F() local
1368 EXPECT_EQ(x86::Address::displace(x86::Address(reg, disp0), disp), in TEST_F()
1369 x86::Address(reg, disp0 + disp)); in TEST_F()
1374 EXPECT_EQ(x86::Address::displace(x86::Address(reg, scale, disp0), disp), in TEST_F()
1375 x86::Address(reg, scale, disp0 + disp)); in TEST_F()
1385 EXPECT_EQ(x86::Address::displace(x86::Address(reg, index, scale, disp0), disp), in TEST_F()
1386 x86::Address(reg, index, scale, disp0 + disp)); in TEST_F()
1391 EXPECT_EQ(x86::Address::displace(x86::Address::Absolute(disp0), disp), in TEST_F()
1392 x86::Address::Absolute(disp0 + disp)); in TEST_F()
/art/dex2oat/linker/arm64/
Drelative_patcher_arm64.cc215 uint32_t disp = target_offset - ((patch_offset - literal_offset + pc_insn_offset) & ~0xfffu); in PatchPcRelativeReference() local
249 insn = PatchAdrp(insn, disp); in PatchPcRelativeReference()
306 uint32_t imm12 = (disp & 0xfffu) >> shift; in PatchPcRelativeReference()
332 uint32_t disp = target_offset - patch_offset; in PatchBakerReadBarrierBranch() local
333 DCHECK((disp >> 20) == 0u || (disp >> 20) == 4095u); // 21-bit signed. in PatchBakerReadBarrierBranch()
334 insn |= (disp << (5 - 2)) & 0x00ffffe0u; // Shift bits 2-20 to 5-23. in PatchBakerReadBarrierBranch()
358 uint32_t Arm64RelativePatcher::PatchAdrp(uint32_t adrp, uint32_t disp) { in PatchAdrp() argument
361 ((disp & 0x00003000u) << (29 - 12)) | in PatchAdrp()
363 ((disp & 0xffffc000u) >> (12 + 2 - 5)) | in PatchAdrp()
369 ((disp & 0x80000000u) >> (31 - 23)); in PatchAdrp()
Drelative_patcher_arm64_test.cc275 uint32_t disp = target_offset - (adrp_offset & ~0xfffu); in GenNopsAndAdrpAndUse() local
277 DCHECK_ALIGNED(disp, 1u << 2); in GenNopsAndAdrpAndUse()
279 ((disp & 0xfffu) << (10 - 2)); // imm12 = ((disp & 0xfffu) >> 2) is at bit 10. in GenNopsAndAdrpAndUse()
282 (disp & 0xfffu) << 10; // imm12 = (disp & 0xfffu) is at bit 10. in GenNopsAndAdrpAndUse()
287 ((disp & 0x3000u) << (29 - 12)) | // immlo = ((disp & 0x3000u) >> 12) is at bit 29, in GenNopsAndAdrpAndUse()
288 ((disp & 0xffffc000) >> (14 - 5)) | // immhi = (disp >> 14) is at bit 5, in GenNopsAndAdrpAndUse()
290 ((disp & 0x80000000) >> (31 - 23)); // sign bit in immhi is at bit 23. in GenNopsAndAdrpAndUse()
887 [&](uint32_t adrp_offset, uint32_t disp) { in TEST_F() argument
890 /*sprel_disp_in_load_units=*/ disp >> 2, in TEST_F()
901 [&](uint32_t adrp_offset, uint32_t disp) { in TEST_F() argument
[all …]
Drelative_patcher_arm64.h58 static uint32_t PatchAdrp(uint32_t adrp, uint32_t disp);
/art/compiler/utils/x86_64/
Dassembler_x86_64.h114 int32_t disp() const { in disp() function
174 void SetDisp8(int8_t disp) { in SetDisp8() argument
176 encoding_[length_++] = static_cast<uint8_t>(disp); in SetDisp8()
179 void SetDisp32(int32_t disp) { in SetDisp32() argument
181 int disp_size = sizeof(disp); in SetDisp32()
182 memmove(&encoding_[length_], &disp, disp_size); in SetDisp32()
211 Address(CpuRegister base_in, int32_t disp) { in Address() argument
212 Init(base_in, disp); in Address()
215 Address(CpuRegister base_in, Offset disp) { in Address() argument
216 Init(base_in, disp.Int32Value()); in Address()
[all …]
Dassembler_x86_64_test.cc2473 for (int32_t disp : displacements) { // extra displacement in TEST_F() local
2476 EXPECT_EQ(x86_64::Address::displace(x86_64::Address(reg, disp0), disp), in TEST_F()
2477 x86_64::Address(reg, disp0 + disp)); in TEST_F()
2482 EXPECT_EQ(x86_64::Address::displace(x86_64::Address(reg, scale, disp0), disp), in TEST_F()
2483 x86_64::Address(reg, scale, disp0 + disp)); in TEST_F()
2493 EXPECT_EQ(x86_64::Address::displace(x86_64::Address(reg, index, scale, disp0), disp), in TEST_F()
2494 x86_64::Address(reg, index, scale, disp0 + disp)); in TEST_F()
2499 EXPECT_EQ(x86_64::Address::displace(x86_64::Address::Absolute(disp0, false), disp), in TEST_F()
2500 x86_64::Address::Absolute(disp0 + disp, false)); in TEST_F()
2501 EXPECT_EQ(x86_64::Address::displace(x86_64::Address::Absolute(disp0, true), disp), in TEST_F()
[all …]
/art/dex2oat/linker/riscv64/
Drelative_patcher_riscv64.cc71 uint32_t disp = target_offset - (patch_offset - literal_offset + pc_insn_offset); in PatchPcRelativeReference() local
76 insn = PatchAuipc(insn, disp); in PatchPcRelativeReference()
86 uint32_t imm12 = disp & 0xfffu; // The instruction shall sign-extend this immediate. in PatchPcRelativeReference()
/art/disassembler/
Ddisassembler_riscv64.cc1841 int32_t disp = BitFieldExtract(insn16, 3, 3) << 1 | BitFieldExtract(insn16, 11, 1) << 4 | in Dump16() local
1846 PrintBranchOffset(SignExtendBits<12>(disp)); in Dump16()
1851 int32_t disp = BitFieldExtract(insn16, 3, 2) << 1 | BitFieldExtract(insn16, 10, 2) << 3 | in Dump16() local
1857 PrintBranchOffset(SignExtendBits<9>(disp)); in Dump16()
/art/compiler/optimizing/
Dcode_generator_x86.cc1726 int32_t disp = 0) { in CreateAddress() argument
1728 return Address(base, disp); in CreateAddress()
1731 return Address(base, index, scale, disp); in CreateAddress()