diff options
author | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2013-12-26 15:46:54 +0000 |
---|---|---|
committer | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2013-12-26 15:46:54 +0000 |
commit | ad12162ff1f0d50c43afefc45e1593f27f197402 (patch) | |
tree | f77430a75e0a4bf12a64b8ee676d40c88ede1041 /powerpc/PrintAsm.ml | |
parent | 9fb435abe98f358b1dde5de6604663a176634e53 (diff) |
Future-proofing: keep signature information in IA32 and PowerPC Asm, just like we already do in ARM Asm.
git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@2385 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'powerpc/PrintAsm.ml')
-rw-r--r-- | powerpc/PrintAsm.ml | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/powerpc/PrintAsm.ml b/powerpc/PrintAsm.ml index 764020a..87d22f2 100644 --- a/powerpc/PrintAsm.ml +++ b/powerpc/PrintAsm.ml @@ -668,9 +668,9 @@ let print_instruction oc tbl pc fallthrough = function fprintf oc " andis. %a, %a, %a\n" ireg r1 ireg r2 constant c | Pb lbl -> fprintf oc " b %a\n" label (transl_label lbl) - | Pbctr -> + | Pbctr sg -> fprintf oc " bctr\n" - | Pbctrl -> + | Pbctrl sg -> fprintf oc " bctrl\n" | Pbf(bit, lbl) -> if !Clflags.option_faligncondbranchs > 0 then @@ -683,9 +683,9 @@ let print_instruction oc tbl pc fallthrough = function fprintf oc " b %a\n" label (transl_label lbl); fprintf oc "%a:\n" label next end - | Pbl s -> + | Pbl(s, sg) -> fprintf oc " bl %a\n" symbol s - | Pbs s -> + | Pbs(s, sg) -> fprintf oc " b %a\n" symbol s | Pblr -> fprintf oc " blr\n" @@ -930,7 +930,7 @@ let print_instruction oc tbl pc fallthrough = function let instr_fall_through = function | Pb _ -> false - | Pbctr -> false + | Pbctr _ -> false | Pbs _ -> false | Pblr -> false | _ -> true @@ -1008,7 +1008,7 @@ let print_jumptable oc (lbl, tbl) = (fun l -> fprintf oc " .long %a\n" label (transl_label l)) tbl -let print_function oc name code = +let print_function oc name fn = Hashtbl.clear current_function_labels; float_literals := []; jumptables := []; @@ -1025,7 +1025,8 @@ let print_function oc name code = fprintf oc "%a:\n" symbol name; print_location oc (C2C.atom_location name); cfi_startproc oc; - print_instructions oc (label_positions PTree.empty 0 code) 0 true code; + print_instructions oc (label_positions PTree.empty 0 fn.fn_code) + 0 true fn.fn_code; cfi_endproc oc; fprintf oc " .type %a, @function\n" symbol name; fprintf oc " .size %a, . - %a\n" symbol name symbol name; |