summaryrefslogtreecommitdiff
path: root/backend/PrintRTL.ml
diff options
context:
space:
mode:
authorGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2011-06-13 18:11:19 +0000
committerGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2011-06-13 18:11:19 +0000
commita5ffc59246b09a389e5f8cbc2f217e323e76990f (patch)
treee1bc7cc54518aad7c20645f187cee8110de8cff9 /backend/PrintRTL.ml
parent4daccd62b92b23016d3f343d5691f9c164a8a951 (diff)
Revised handling of annotation statements, and more generally built-in functions, and more generally external functions
git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@1672 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'backend/PrintRTL.ml')
-rw-r--r--backend/PrintRTL.ml14
1 files changed, 3 insertions, 11 deletions
diff --git a/backend/PrintRTL.ml b/backend/PrintRTL.ml
index 62ee2c9..620a949 100644
--- a/backend/PrintRTL.ml
+++ b/backend/PrintRTL.ml
@@ -19,19 +19,11 @@ open Maps
open AST
open Integers
open RTL
+open PrintAST
open PrintOp
(* Printing of RTL code *)
-let name_of_chunk = function
- | Mint8signed -> "int8signed"
- | Mint8unsigned -> "int8unsigned"
- | Mint16signed -> "int16signed"
- | Mint16unsigned -> "int16unsigned"
- | Mint32 -> "int32"
- | Mfloat32 -> "float32"
- | Mfloat64 -> "float64"
-
let reg pp r =
fprintf pp "x%ld" (camlint_of_positive r)
@@ -79,8 +71,8 @@ let print_instruction pp (pc, i) =
fprintf pp "tailcall %a(%a)@ "
ros fn regs args
| Ibuiltin(ef, args, res, s) ->
- fprintf pp "%a = builtin \"%s\"(%a)@ "
- reg res (extern_atom ef.ef_id) regs args;
+ fprintf pp "%a = builtin %s(%a)@ "
+ reg res (name_of_external ef) regs args;
print_succ pp s (Int32.pred pc)
| Icond(cond, args, s1, s2) ->
fprintf pp "if (%a) goto %ld else goto %ld@ "