Skip to content
Snippets Groups Projects
Commit ed7f2503 authored by xleroy's avatar xleroy
Browse files

Updated ARM port

git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@1232 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
parent 307da4d1
No related branches found
No related tags found
No related merge requests found
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
open Printf open Printf
open Datatypes open Datatypes
open Integers
open Camlcoq open Camlcoq
open AST open AST
open Asm open Asm
...@@ -116,7 +117,7 @@ let label_float f = ...@@ -116,7 +117,7 @@ let label_float f =
max_pos_constants := min !max_pos_constants (!currpos + 1024); max_pos_constants := min !max_pos_constants (!currpos + 1024);
lbl' lbl'
let symbol_labels = (Hashtbl.create 39 : (ident * Integers.int, int) Hashtbl.t) let symbol_labels = (Hashtbl.create 39 : (ident * Int.int, int) Hashtbl.t)
let label_symbol id ofs = let label_symbol id ofs =
try try
...@@ -360,7 +361,8 @@ let print_instruction oc labels = function ...@@ -360,7 +361,8 @@ let print_instruction oc labels = function
fprintf oc " ldr pc, [pc, %a]\n" ireg r; fprintf oc " ldr pc, [pc, %a]\n" ireg r;
fprintf oc " mov r0, r0\n"; (* no-op *) fprintf oc " mov r0, r0\n"; (* no-op *)
List.iter List.iter
(fun l -> fprintf oc " .word %a\n" label (transl_label l)); (fun l -> fprintf oc " .word %a\n" print_label l)
tbl;
2 + List.length tbl 2 + List.length tbl
let no_fallthrough = function let no_fallthrough = function
......
...@@ -52,10 +52,6 @@ Extract Constant Iteration.GenIter.iterate => ...@@ -52,10 +52,6 @@ Extract Constant Iteration.GenIter.iterate =>
match f a with Coq_inl b -> Some b | Coq_inr a' -> iter f a' match f a with Coq_inl b -> Some b | Coq_inr a' -> iter f a'
in iter". in iter".
(* Selection *)
Extract Constant SelectOp.use_fused_mul => "(fun () -> !Clflags.option_fmadd)".
(* RTLgen *) (* RTLgen *)
Extract Constant RTLgen.compile_switch => "RTLgenaux.compile_switch". Extract Constant RTLgen.compile_switch => "RTLgenaux.compile_switch".
Extract Constant RTLgen.more_likely => "RTLgenaux.more_likely". Extract Constant RTLgen.more_likely => "RTLgenaux.more_likely".
......
...@@ -12,6 +12,9 @@ ...@@ -12,6 +12,9 @@
(* Additional extraction directives specific to the PowerPC port *) (* Additional extraction directives specific to the PowerPC port *)
(* Selection *)
Extract Constant SelectOp.use_fused_mul => "(fun () -> !Clflags.option_fmadd)".
(* Asm *) (* Asm *)
Extract Constant Asm.low_half => "fun _ -> assert false". Extract Constant Asm.low_half => "fun _ -> assert false".
Extract Constant Asm.high_half => "fun _ -> assert false". Extract Constant Asm.high_half => "fun _ -> assert false".
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment