summaryrefslogtreecommitdiff
path: root/src/arch/arm
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2015-07-12 01:57:23 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2015-07-12 01:57:23 (GMT)
commitba1d7ae3ae3c82ab2c3d23a900c16baff6f8ca26 (patch)
tree04a1d3fb7a7e8c9d2dffd91576bcd0d051ae3750 /src/arch/arm
parent2be3bca7ff0f8ab40615fdbf72c149cd6439b0ac (diff)
Defined AIF_RETURN_POINT to replace the previous 'return' accessors.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@546 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/arch/arm')
-rw-r--r--src/arch/arm/v7/opdefs/Makefile.am1
-rw-r--r--src/arch/arm/v7/opdefs/b_A8818.d10
-rw-r--r--src/arch/arm/v7/opdefs/bl_A8825.d8
-rw-r--r--src/arch/arm/v7/opdefs/blx_A8826.d4
-rw-r--r--src/arch/arm/v7/opdefs/bx_A8827.d4
-rw-r--r--src/arch/arm/v7/opdefs/ldr_A8862.d6
-rw-r--r--src/arch/arm/v7/opdefs/ldr_A8863.d4
-rw-r--r--src/arch/arm/v7/opdefs/ldr_A8864.d4
-rw-r--r--src/arch/arm/v7/opdefs/ldr_A8865.d2
-rw-r--r--src/arch/arm/v7/opdefs/ldrb_A8867.d6
-rw-r--r--src/arch/arm/v7/opdefs/ldrb_A8868.d4
-rw-r--r--src/arch/arm/v7/opdefs/ldrb_A8870.d6
-rw-r--r--src/arch/arm/v7/opdefs/pop_A88131.d6
-rw-r--r--src/arch/arm/v7/opdefs/pop_A88132.d4
-rw-r--r--src/arch/arm/v7/opdefs/str_A88204.d4
-rw-r--r--src/arch/arm/v7/opdefs/strb_A88207.d4
-rw-r--r--src/arch/arm/v7/opdefs/strb_A88208.d6
17 files changed, 41 insertions, 42 deletions
diff --git a/src/arch/arm/v7/opdefs/Makefile.am b/src/arch/arm/v7/opdefs/Makefile.am
index 6207906..5483f92 100644
--- a/src/arch/arm/v7/opdefs/Makefile.am
+++ b/src/arch/arm/v7/opdefs/Makefile.am
@@ -16,7 +16,6 @@ D2C_ENCODINGS = \
-e T=thumb_32_
D2C_MACROS = \
- -M DefineAsReturn=g_arch_instruction_define_as_return \
-M SetFlags=g_armv7_instruction_define_setflags \
-M Condition=g_arm_instruction_set_cond \
-M Register=translate_armv7_register \
diff --git a/src/arch/arm/v7/opdefs/b_A8818.d b/src/arch/arm/v7/opdefs/b_A8818.d
index ab5971f..55b123e 100644
--- a/src/arch/arm/v7/opdefs/b_A8818.d
+++ b/src/arch/arm/v7/opdefs/b_A8818.d
@@ -48,7 +48,7 @@
//if cond == '1110' then UNDEFINED;
//if cond == '1111' then SEE SVC;
- //chk_call DefineAsReturn(1)
+ //chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -77,7 +77,7 @@
@rules {
//if InITBlock() && !LastInITBlock() then UNPREDICTABLE;
- //chk_call DefineAsReturn(1)
+ //chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -108,7 +108,7 @@
//if cond<3:1> == '111' then SEE "Related encodings";
//if InITBlock() then UNPREDICTABLE;
- //chk_call DefineAsReturn(1)
+ //chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -139,7 +139,7 @@
@rules {
//if InITBlock() && !LastInITBlock() then UNPREDICTABLE;
- //chk_call DefineAsReturn(1)
+ //chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -168,7 +168,7 @@
@rules {
- //chk_call DefineAsReturn(1)
+ //chk_call SetInsFlag(AIF_RETURN_POINT)
}
diff --git a/src/arch/arm/v7/opdefs/bl_A8825.d b/src/arch/arm/v7/opdefs/bl_A8825.d
index 183ba36..a9b395a 100644
--- a/src/arch/arm/v7/opdefs/bl_A8825.d
+++ b/src/arch/arm/v7/opdefs/bl_A8825.d
@@ -47,7 +47,7 @@
@rules {
- //chk_call DefineAsReturn(1)
+ //chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -77,7 +77,7 @@
@rules {
- //chk_call DefineAsReturn(1)
+ //chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -105,7 +105,7 @@
@rules {
- //chk_call DefineAsReturn(1)
+ //chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -133,7 +133,7 @@
@rules {
- //chk_call DefineAsReturn(1)
+ //chk_call SetInsFlag(AIF_RETURN_POINT)
}
diff --git a/src/arch/arm/v7/opdefs/blx_A8826.d b/src/arch/arm/v7/opdefs/blx_A8826.d
index c972af2..bc26867 100644
--- a/src/arch/arm/v7/opdefs/blx_A8826.d
+++ b/src/arch/arm/v7/opdefs/blx_A8826.d
@@ -39,7 +39,7 @@
//if m == 15 then UNPREDICTABLE;
//if InITBlock() && !LastInITBlock() then UNPREDICTABLE;
- //chk_call DefineAsReturn(1)
+ //chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -61,7 +61,7 @@
@rules {
//if m == 15 then UNPREDICTABLE;
- //chk_call DefineAsReturn(1)
+ //chk_call SetInsFlag(AIF_RETURN_POINT)
}
diff --git a/src/arch/arm/v7/opdefs/bx_A8827.d b/src/arch/arm/v7/opdefs/bx_A8827.d
index f8027a4..75921ac 100644
--- a/src/arch/arm/v7/opdefs/bx_A8827.d
+++ b/src/arch/arm/v7/opdefs/bx_A8827.d
@@ -44,7 +44,7 @@
@rules {
- chk_call DefineAsReturn(1)
+ chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -71,7 +71,7 @@
@rules {
- chk_call DefineAsReturn(1)
+ chk_call SetInsFlag(AIF_RETURN_POINT)
}
diff --git a/src/arch/arm/v7/opdefs/ldr_A8862.d b/src/arch/arm/v7/opdefs/ldr_A8862.d
index 49d5c3a..e2f9e3f 100644
--- a/src/arch/arm/v7/opdefs/ldr_A8862.d
+++ b/src/arch/arm/v7/opdefs/ldr_A8862.d
@@ -76,7 +76,7 @@
//if Rn == '1111' then SEE LDR (literal);
//if t == 15 && InITBlock() && !LastInITBlock() then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -104,7 +104,7 @@
//if Rn == '1101' && P == '0' && U == '1' && W == '1' && imm8 == '00000100' then SEE POP;
//if P == '0' && W == '0' then UNDEFINED;
//if (wback && n == t) || (t == 15 && InITBlock() && !LastInITBlock()) then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -133,7 +133,7 @@
//if Rn == '1101' && P == '0' && U == '1' && W == '1' && imm8 == '00000100' then SEE POP;
//if P == '0' && W == '0' then UNDEFINED;
//if (wback && n == t) || (t == 15 && InITBlock() && !LastInITBlock()) then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
diff --git a/src/arch/arm/v7/opdefs/ldr_A8863.d b/src/arch/arm/v7/opdefs/ldr_A8863.d
index 2360e3a..b2f7f84 100644
--- a/src/arch/arm/v7/opdefs/ldr_A8863.d
+++ b/src/arch/arm/v7/opdefs/ldr_A8863.d
@@ -46,7 +46,7 @@
//t = UInt(Rt); n = UInt(Rn); imm32 = ZeroExtend(imm12, 32);
//index = (P == '1'); add = (U == '1'); wback = (P == '0') || (W == '1');
//if wback && n == t then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -76,7 +76,7 @@
//t = UInt(Rt); n = UInt(Rn); imm32 = ZeroExtend(imm12, 32);
//index = (P == '1'); add = (U == '1'); wback = (P == '0') || (W == '1');
//if wback && n == t then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
diff --git a/src/arch/arm/v7/opdefs/ldr_A8864.d b/src/arch/arm/v7/opdefs/ldr_A8864.d
index 4cf0048..bd7ed50 100644
--- a/src/arch/arm/v7/opdefs/ldr_A8864.d
+++ b/src/arch/arm/v7/opdefs/ldr_A8864.d
@@ -70,7 +70,7 @@
@rules {
//if t == 15 && InITBlock() && !LastInITBlock() then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -101,7 +101,7 @@
@rules {
//if t == 15 && InITBlock() && !LastInITBlock() then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
diff --git a/src/arch/arm/v7/opdefs/ldr_A8865.d b/src/arch/arm/v7/opdefs/ldr_A8865.d
index e8d255b..b6a0126 100644
--- a/src/arch/arm/v7/opdefs/ldr_A8865.d
+++ b/src/arch/arm/v7/opdefs/ldr_A8865.d
@@ -67,7 +67,7 @@
//if Rn == '1111' then SEE LDR (literal);
//if m IN {13,15} then UNPREDICTABLE;
//if t == 15 && InITBlock() && !LastInITBlock() then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
diff --git a/src/arch/arm/v7/opdefs/ldrb_A8867.d b/src/arch/arm/v7/opdefs/ldrb_A8867.d
index 2114330..c772b08 100644
--- a/src/arch/arm/v7/opdefs/ldrb_A8867.d
+++ b/src/arch/arm/v7/opdefs/ldrb_A8867.d
@@ -60,7 +60,7 @@
//if Rt == '1111' then SEE PLD;
//if Rn == '1111' then SEE LDRB (literal);
//if t == 13 then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -88,7 +88,7 @@
//if P == '1' && U == '1' && W == '0' then SEE LDRBT;
//if P == '0' && W == '0' then UNDEFINED;
//if t == 13 || (t == 15 && W == '1') || (wback && n == t) then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -117,7 +117,7 @@
//if P == '1' && U == '1' && W == '0' then SEE LDRBT;
//if P == '0' && W == '0' then UNDEFINED;
//if t == 13 || (t == 15 && W == '1') || (wback && n == t) then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
diff --git a/src/arch/arm/v7/opdefs/ldrb_A8868.d b/src/arch/arm/v7/opdefs/ldrb_A8868.d
index fdf3049..579db06 100644
--- a/src/arch/arm/v7/opdefs/ldrb_A8868.d
+++ b/src/arch/arm/v7/opdefs/ldrb_A8868.d
@@ -45,7 +45,7 @@
//if P == '1' && U == '1' && W == '0' then SEE LDRBT;
//if P == '0' && W == '0' then UNDEFINED;
//if t == 13 || (t == 15 && W == '1') || (wback && n == t) then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -74,7 +74,7 @@
//if P == '1' && U == '1' && W == '0' then SEE LDRBT;
//if P == '0' && W == '0' then UNDEFINED;
//if t == 13 || (t == 15 && W == '1') || (wback && n == t) then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
diff --git a/src/arch/arm/v7/opdefs/ldrb_A8870.d b/src/arch/arm/v7/opdefs/ldrb_A8870.d
index 868b1c9..2b6f2e9 100644
--- a/src/arch/arm/v7/opdefs/ldrb_A8870.d
+++ b/src/arch/arm/v7/opdefs/ldrb_A8870.d
@@ -65,7 +65,7 @@
//if Rn == '1111' then UNDEFINED;
//if t IN {13,15} || m IN {13,15} then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -93,7 +93,7 @@
//if t == 15 || m == 15 then UNPREDICTABLE;
//if wback && (n == 15 || n == t) then UNPREDICTABLE;
//if ArchVersion() < 6 && wback && m == n then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -122,7 +122,7 @@
//if t == 15 || m == 15 then UNPREDICTABLE;
//if wback && (n == 15 || n == t) then UNPREDICTABLE;
//if ArchVersion() < 6 && wback && m == n then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
diff --git a/src/arch/arm/v7/opdefs/pop_A88131.d b/src/arch/arm/v7/opdefs/pop_A88131.d
index a5e878f..47b9c2d 100644
--- a/src/arch/arm/v7/opdefs/pop_A88131.d
+++ b/src/arch/arm/v7/opdefs/pop_A88131.d
@@ -39,7 +39,7 @@
//if BitCount(registers) < 1 then UNPREDICTABLE;
//if registers<15> == '1' && InITBlock() && !LastInITBlock() then UNPREDICTABLE;
- if (P == '1') ; chk_call DefineAsReturn(1)
+ if (P == '1') ; chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -61,7 +61,7 @@
//if BitCount(registers) < 2 || (P == '1' && M == '1') then UNPREDICTABLE;
//if registers<15> == '1' && InITBlock() && !LastInITBlock() then UNPREDICTABLE;
- if (P == '1') ; chk_call DefineAsReturn(1)
+ if (P == '1') ; chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -83,7 +83,7 @@
@rules {
//if t == 13 || (t == 15 && InITBlock() && !LastInITBlock()) then UNPREDICTABLE;
- if (Rt == '1111') ; chk_call DefineAsReturn(1)
+ if (Rt == '1111') ; chk_call SetInsFlag(AIF_RETURN_POINT)
}
diff --git a/src/arch/arm/v7/opdefs/pop_A88132.d b/src/arch/arm/v7/opdefs/pop_A88132.d
index 1762b45..10e18a4 100644
--- a/src/arch/arm/v7/opdefs/pop_A88132.d
+++ b/src/arch/arm/v7/opdefs/pop_A88132.d
@@ -40,7 +40,7 @@
//if BitCount(register_list) < 2 then SEE LDM / LDMIA / LDMFD;
//if registers<13> == '1' && ArchVersion() >= 7 then UNPREDICTABLE;
- if (register_list & 0x8000) ; chk_call DefineAsReturn(1)
+ if (register_list & 0x8000) ; chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -63,7 +63,7 @@
@rules {
//if t == 13 then UNPREDICTABLE;
- if (Rt == '1111') ; chk_call DefineAsReturn(1)
+ if (Rt == '1111') ; chk_call SetInsFlag(AIF_RETURN_POINT)
}
diff --git a/src/arch/arm/v7/opdefs/str_A88204.d b/src/arch/arm/v7/opdefs/str_A88204.d
index 2712e1b..fb5879a 100644
--- a/src/arch/arm/v7/opdefs/str_A88204.d
+++ b/src/arch/arm/v7/opdefs/str_A88204.d
@@ -43,7 +43,7 @@
//if P == '0' && W == '1' then SEE STRT;
//if Rn == '1101' && P == '1' && U == '0' && W == '1' && imm12 == '000000000100' then SEE PUSH;
//if wback && (n == 15 || n == t) then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -70,7 +70,7 @@
//if P == '0' && W == '1' then SEE STRT;
//if Rn == '1101' && P == '1' && U == '0' && W == '1' && imm12 == '000000000100' then SEE PUSH;
//if wback && (n == 15 || n == t) then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
diff --git a/src/arch/arm/v7/opdefs/strb_A88207.d b/src/arch/arm/v7/opdefs/strb_A88207.d
index b57dbf7..2af8fb7 100644
--- a/src/arch/arm/v7/opdefs/strb_A88207.d
+++ b/src/arch/arm/v7/opdefs/strb_A88207.d
@@ -45,7 +45,7 @@
//if P == '1' && U == '1' && W == '0' then SEE LDRBT;
//if P == '0' && W == '0' then UNDEFINED;
//if t == 13 || (t == 15 && W == '1') || (wback && n == t) then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -74,7 +74,7 @@
//if P == '1' && U == '1' && W == '0' then SEE LDRBT;
//if P == '0' && W == '0' then UNDEFINED;
//if t == 13 || (t == 15 && W == '1') || (wback && n == t) then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
diff --git a/src/arch/arm/v7/opdefs/strb_A88208.d b/src/arch/arm/v7/opdefs/strb_A88208.d
index ab6c198..c94fe4d 100644
--- a/src/arch/arm/v7/opdefs/strb_A88208.d
+++ b/src/arch/arm/v7/opdefs/strb_A88208.d
@@ -65,7 +65,7 @@
//if Rn == '1111' then UNDEFINED;
//if t IN {13,15} || m IN {13,15} then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -92,7 +92,7 @@
//if P == '0' && W == '1' then SEE STRT;
//if Rn == '1101' && P == '1' && U == '0' && W == '1' && imm12 == '000000000100' then SEE PUSH;
//if wback && (n == 15 || n == t) then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}
@@ -120,7 +120,7 @@
//if P == '0' && W == '1' then SEE STRT;
//if Rn == '1101' && P == '1' && U == '0' && W == '1' && imm12 == '000000000100' then SEE PUSH;
//if wback && (n == 15 || n == t) then UNPREDICTABLE;
- if (Rt == '1111'); chk_call DefineAsReturn(1)
+ if (Rt == '1111'); chk_call SetInsFlag(AIF_RETURN_POINT)
}