From 64a80f81297fb20c4f952d4b36cd0ae5d5da8f1e Mon Sep 17 00:00:00 2001 From: Cyril SIX Date: Mon, 14 Oct 2019 11:17:45 +0200 Subject: Tackling struct passing by value for the future K1C ABI --- cparser/Machine.ml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'cparser/Machine.ml') diff --git a/cparser/Machine.ml b/cparser/Machine.ml index ac34fa5f..4999f0ac 100644 --- a/cparser/Machine.ml +++ b/cparser/Machine.ml @@ -18,6 +18,7 @@ type struct_passing_style = | SP_ref_callee (* by reference, callee takes copy *) | SP_ref_caller (* by reference, caller takes copy *) + | SP_value32_ref_callee (* by value if <= 32 bits, by ref_callee otherwise *) | SP_split_args (* by value, as a sequence of ints *) type struct_return_style = @@ -268,8 +269,8 @@ let mppa_k1c = bigendian = false; bitfields_msb_first = false; (* TO CHECK *) supports_unaligned_accesses = true; - struct_passing_style = SP_split_args; - struct_return_style = SR_int1248 } + struct_passing_style = SP_value32_ref_callee; + struct_return_style = SR_int1to4 } (* Add GCC extensions re: sizeof and alignof *) -- cgit