aboutsummaryrefslogtreecommitdiffstats
path: root/powerpc/AsmToJSON.ml
diff options
context:
space:
mode:
authorBernhard Schommer <bernhardschommer@gmail.com>2016-01-25 20:11:09 +0100
committerBernhard Schommer <bernhardschommer@gmail.com>2016-01-25 20:11:09 +0100
commit35c7398e985c51a765c6bbf08719d9df7c285f9c (patch)
treebf49c213bb115c9db418eabe66e11affa9f1db82 /powerpc/AsmToJSON.ml
parent4467453e0edca993c175690b7141d4916af3dc19 (diff)
downloadcompcert-kvx-35c7398e985c51a765c6bbf08719d9df7c285f9c.tar.gz
compcert-kvx-35c7398e985c51a765c6bbf08719d9df7c285f9c.zip
Added printer for Configuration and finished Clflags.
Diffstat (limited to 'powerpc/AsmToJSON.ml')
-rw-r--r--powerpc/AsmToJSON.ml136
1 files changed, 70 insertions, 66 deletions
diff --git a/powerpc/AsmToJSON.ml b/powerpc/AsmToJSON.ml
index 4ca7dbde..4f6a1864 100644
--- a/powerpc/AsmToJSON.ml
+++ b/powerpc/AsmToJSON.ml
@@ -21,73 +21,77 @@ open Json
open Printf
open Sections
-let p_ireg oc = function
- | GPR0 -> fprintf oc "{\"Register\":\"r0\"}"
- | GPR1 -> fprintf oc "{\"Register\":\"r1\"}"
- | GPR2 -> fprintf oc "{\"Register\":\"r2\"}"
- | GPR3 -> fprintf oc "{\"Register\":\"r3\"}"
- | GPR4 -> fprintf oc "{\"Register\":\"r4\"}"
- | GPR5 -> fprintf oc "{\"Register\":\"r5\"}"
- | GPR6 -> fprintf oc "{\"Register\":\"r6\"}"
- | GPR7 -> fprintf oc "{\"Register\":\"r7\"}"
- | GPR8 -> fprintf oc "{\"Register\":\"r8\"}"
- | GPR9 -> fprintf oc "{\"Register\":\"r9\"}"
- | GPR10 -> fprintf oc "{\"Register\":\"r10\"}"
- | GPR11 -> fprintf oc "{\"Register\":\"r11\"}"
- | GPR12 -> fprintf oc "{\"Register\":\"r12\"}"
- | GPR13 -> fprintf oc "{\"Register\":\"r13\"}"
- | GPR14 -> fprintf oc "{\"Register\":\"r14\"}"
- | GPR15 -> fprintf oc "{\"Register\":\"r15\"}"
- | GPR16 -> fprintf oc "{\"Register\":\"r16\"}"
- | GPR17 -> fprintf oc "{\"Register\":\"r17\"}"
- | GPR18 -> fprintf oc "{\"Register\":\"r18\"}"
- | GPR19 -> fprintf oc "{\"Register\":\"r19\"}"
- | GPR20 -> fprintf oc "{\"Register\":\"r20\"}"
- | GPR21 -> fprintf oc "{\"Register\":\"r21\"}"
- | GPR22 -> fprintf oc "{\"Register\":\"r22\"}"
- | GPR23 -> fprintf oc "{\"Register\":\"r23\"}"
- | GPR24 -> fprintf oc "{\"Register\":\"r24\"}"
- | GPR25 -> fprintf oc "{\"Register\":\"r25\"}"
- | GPR26 -> fprintf oc "{\"Register\":\"r26\"}"
- | GPR27 -> fprintf oc "{\"Register\":\"r27\"}"
- | GPR28 -> fprintf oc "{\"Register\":\"r28\"}"
- | GPR29 -> fprintf oc "{\"Register\":\"r29\"}"
- | GPR30 -> fprintf oc "{\"Register\":\"r30\"}"
- | GPR31 -> fprintf oc "{\"Register\":\"r31\"}"
+let p_ireg oc reg =
+ let num = match reg with
+ | GPR0 -> 0
+ | GPR1 -> 1
+ | GPR2 -> 2
+ | GPR3 -> 3
+ | GPR4 -> 4
+ | GPR5 -> 5
+ | GPR6 -> 6
+ | GPR7 -> 7
+ | GPR8 -> 8
+ | GPR9 -> 9
+ | GPR10 -> 10
+ | GPR11 -> 11
+ | GPR12 -> 12
+ | GPR13 -> 13
+ | GPR14 -> 14
+ | GPR15 -> 15
+ | GPR16 -> 16
+ | GPR17 -> 17
+ | GPR18 -> 18
+ | GPR19 -> 19
+ | GPR20 -> 20
+ | GPR21 -> 21
+ | GPR22 -> 22
+ | GPR23 -> 23
+ | GPR24 -> 24
+ | GPR25 -> 25
+ | GPR26 -> 26
+ | GPR27 -> 27
+ | GPR28 -> 28
+ | GPR29 -> 29
+ | GPR30 -> 30
+ | GPR31 -> 31
+ in p_jmember oc "Register" (fun oc -> fprintf oc "r%d") num
-let p_freg oc = function
- | FPR0 -> fprintf oc "{\"Register\":\"f0\"}"
- | FPR1 -> fprintf oc "{\"Register\":\"f1\"}"
- | FPR2 -> fprintf oc "{\"Register\":\"f2\"}"
- | FPR3 -> fprintf oc "{\"Register\":\"f3\"}"
- | FPR4 -> fprintf oc "{\"Register\":\"f4\"}"
- | FPR5 -> fprintf oc "{\"Register\":\"f5\"}"
- | FPR6 -> fprintf oc "{\"Register\":\"f6\"}"
- | FPR7 -> fprintf oc "{\"Register\":\"f7\"}"
- | FPR8 -> fprintf oc "{\"Register\":\"f8\"}"
- | FPR9 -> fprintf oc "{\"Register\":\"f9\"}"
- | FPR10 -> fprintf oc "{\"Register\":\"f10\"}"
- | FPR11 -> fprintf oc "{\"Register\":\"f11\"}"
- | FPR12 -> fprintf oc "{\"Register\":\"f12\"}"
- | FPR13 -> fprintf oc "{\"Register\":\"f13\"}"
- | FPR14 -> fprintf oc "{\"Register\":\"f14\"}"
- | FPR15 -> fprintf oc "{\"Register\":\"f15\"}"
- | FPR16 -> fprintf oc "{\"Register\":\"f16\"}"
- | FPR17 -> fprintf oc "{\"Register\":\"f17\"}"
- | FPR18 -> fprintf oc "{\"Register\":\"f18\"}"
- | FPR19 -> fprintf oc "{\"Register\":\"f19\"}"
- | FPR20 -> fprintf oc "{\"Register\":\"f20\"}"
- | FPR21 -> fprintf oc "{\"Register\":\"f21\"}"
- | FPR22 -> fprintf oc "{\"Register\":\"f22\"}"
- | FPR23 -> fprintf oc "{\"Register\":\"f23\"}"
- | FPR24 -> fprintf oc "{\"Register\":\"f24\"}"
- | FPR25 -> fprintf oc "{\"Register\":\"f25\"}"
- | FPR26 -> fprintf oc "{\"Register\":\"f26\"}"
- | FPR27 -> fprintf oc "{\"Register\":\"f27\"}"
- | FPR28 -> fprintf oc "{\"Register\":\"f28\"}"
- | FPR29 -> fprintf oc "{\"Register\":\"f29\"}"
- | FPR30 -> fprintf oc "{\"Register\":\"f30\"}"
- | FPR31 -> fprintf oc "{\"Register\":\"f31\"}"
+let p_freg oc reg =
+ let num = match reg with
+ | FPR0 -> 0
+ | FPR1 -> 1
+ | FPR2 -> 2
+ | FPR3 -> 3
+ | FPR4 -> 4
+ | FPR5 -> 5
+ | FPR6 -> 6
+ | FPR7 -> 7
+ | FPR8 -> 8
+ | FPR9 -> 9
+ | FPR10 -> 10
+ | FPR11 -> 11
+ | FPR12 -> 12
+ | FPR13 -> 13
+ | FPR14 -> 14
+ | FPR15 -> 15
+ | FPR16 -> 16
+ | FPR17 -> 17
+ | FPR18 -> 18
+ | FPR19 -> 19
+ | FPR20 -> 20
+ | FPR21 -> 21
+ | FPR22 -> 22
+ | FPR23 -> 23
+ | FPR24 -> 24
+ | FPR25 -> 25
+ | FPR26 -> 26
+ | FPR27 -> 27
+ | FPR28 -> 28
+ | FPR29 -> 29
+ | FPR30 -> 30
+ | FPR31 -> 31
+ in p_jmember oc "Register" (fun oc -> fprintf oc "f%d") num
let p_preg oc = function
| IR ir -> p_ireg oc ir