diff options
author | Georgia Kouveli <georgia.kouveli@arm.com> | 2017-05-12 14:54:56 +0100 |
---|---|---|
committer | Georgia Kouveli <georgia.kouveli@arm.com> | 2017-05-12 18:03:06 +0100 |
commit | 606582c29b827e78b814c728f3c39a5e56c12833 (patch) | |
tree | c6abd6b43a5a98a238cbec4b71c6a255c011d223 | |
parent | 4b139a2dd8a7c32fc0f7df0cfd36d6c1336bc26c (diff) |
Remove Label versions of PLD and PLI from the MacroAssembler.
These are unsafe to use, as we do not guarantee that the labels they refer to
will be in range. Users can use the assembler version, or the MemOperand
version instead.
Change-Id: Ied575009f11514bbbca59a64f88e78cdc442fc73
-rw-r--r-- | src/aarch32/macro-assembler-aarch32.h | 16 | ||||
-rw-r--r-- | test/aarch32/test-assembler-aarch32.cc | 10 | ||||
-rw-r--r-- | test/aarch32/test-disasm-a32.cc | 10 |
3 files changed, 2 insertions, 34 deletions
diff --git a/src/aarch32/macro-assembler-aarch32.h b/src/aarch32/macro-assembler-aarch32.h index 420d4b46..5a1c2bf6 100644 --- a/src/aarch32/macro-assembler-aarch32.h +++ b/src/aarch32/macro-assembler-aarch32.h @@ -2916,14 +2916,6 @@ class MacroAssembler : public Assembler, public MacroAssemblerInterface { Pkhtb(al, rd, rn, operand); } - void Pld(Condition cond, Label* label) { - VIXL_ASSERT(allow_macro_instructions_); - VIXL_ASSERT(OutsideITBlock()); - MacroEmissionCheckScope guard(this); - ITScope it_scope(this, &cond); - pld(cond, label); - } - void Pld(Label* label) { Pld(al, label); } void Pld(Condition cond, const MemOperand& operand) { VIXL_ASSERT(!AliasesAvailableScratchRegister(operand)); @@ -2955,14 +2947,6 @@ class MacroAssembler : public Assembler, public MacroAssemblerInterface { } void Pli(const MemOperand& operand) { Pli(al, operand); } - void Pli(Condition cond, Label* label) { - VIXL_ASSERT(allow_macro_instructions_); - VIXL_ASSERT(OutsideITBlock()); - MacroEmissionCheckScope guard(this); - ITScope it_scope(this, &cond); - pli(cond, label); - } - void Pli(Label* label) { Pli(al, label); } void Pop(Condition cond, RegisterList registers) { VIXL_ASSERT(!AliasesAvailableScratchRegister(registers)); diff --git a/test/aarch32/test-assembler-aarch32.cc b/test/aarch32/test-assembler-aarch32.cc index 2ba77e18..b0af5fff 100644 --- a/test/aarch32/test-assembler-aarch32.cc +++ b/test/aarch32/test-assembler-aarch32.cc @@ -4390,11 +4390,6 @@ TEST(preloads) { __ Pldw(MemOperand(r0, r1, LSL, 20)); } - // PLD literal - Label pld_label; - __ Pld(&pld_label); - __ Bind(&pld_label); - // PLI immediate __ Pli(MemOperand(sp, 0)); __ Pli(MemOperand(r0, 0)); @@ -4420,11 +4415,6 @@ TEST(preloads) { __ Pli(MemOperand(r0, r1, LSL, 20)); } - // PLI literal - Label pli_label; - __ Pli(&pli_label); - __ Bind(&pli_label); - END(); } diff --git a/test/aarch32/test-disasm-a32.cc b/test/aarch32/test-disasm-a32.cc index dae911dc..855fc087 100644 --- a/test/aarch32/test-disasm-a32.cc +++ b/test/aarch32/test-disasm-a32.cc @@ -3449,10 +3449,7 @@ TEST(preloads) { COMPARE_A32(Pldw(MemOperand(r0, r1, LSL, 20)), "pldw [r0, r1, lsl #20]\n"); // PLD literal - Label pld_label; - COMPARE_A32(Pld(&pld_label);, "pld [pc, #-0]\n"); - COMPARE_T32(Pld(&pld_label);, "pld [pc, #-0]\n"); - __ Bind(&pld_label); + COMPARE_BOTH(Pld(MemOperand(pc, minus, 0)), "pld [pc, #-0]\n"); // PLI immediate COMPARE_BOTH(Pli(MemOperand(r0, 0)), "pli [r0]\n"); @@ -3468,10 +3465,7 @@ TEST(preloads) { COMPARE_A32(Pli(MemOperand(r0, r1, LSL, 20)), "pli [r0, r1, lsl #20]\n"); // PLI literal - Label pli_label; - COMPARE_A32(Pli(&pli_label);, "pli [pc, #-0]\n"); - COMPARE_T32(Pli(&pli_label);, "pli [pc, #-0]\n"); - __ Bind(&pli_label); + COMPARE_BOTH(Pli(MemOperand(pc, minus, 0)), "pli [pc, #-0]\n"); CLEANUP(); } |