summaryrefslogtreecommitdiff
path: root/powerpc/PrintAsm.ml
diff options
context:
space:
mode:
authorGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2013-12-26 15:46:54 +0000
committerGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2013-12-26 15:46:54 +0000
commitad12162ff1f0d50c43afefc45e1593f27f197402 (patch)
treef77430a75e0a4bf12a64b8ee676d40c88ede1041 /powerpc/PrintAsm.ml
parent9fb435abe98f358b1dde5de6604663a176634e53 (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.ml15
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;