diff options
author | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2009-11-19 13:31:08 +0000 |
---|---|---|
committer | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2009-11-19 13:31:08 +0000 |
commit | cdf83055d96e2af784a97c783c94b83ba2032ae1 (patch) | |
tree | 908255b3dc26d69a27f55ae430fb6529934dde32 /arm/Asmgen.v | |
parent | d0ed98b8fd61a88cf8e9514015a8f2419fd59575 (diff) |
Added support for jump tables.
git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@1181 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'arm/Asmgen.v')
-rw-r--r-- | arm/Asmgen.v | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/arm/Asmgen.v b/arm/Asmgen.v index 7e40949..8e0805f 100644 --- a/arm/Asmgen.v +++ b/arm/Asmgen.v @@ -483,6 +483,9 @@ Definition transl_instr (f: Mach.function) (i: Mach.instruction) (k: code) := Pb lbl :: k | Mcond cond args lbl => transl_cond cond args (Pbc (crbit_for_cond cond) lbl :: k) + | Mjumptable arg tbl => + Pmov IR14 (SOlslimm (ireg_of arg) (Int.repr 2)) :: + Pbtbl IR14 tbl :: k | Mreturn => loadind_int IR13 f.(fn_retaddr_ofs) IR14 (Pfreeframe f.(fn_link_ofs) :: Pbreg IR14 :: k) |