From 60b6624ae2b28ebe9fb30c2aa6115e4d5c1ab436 Mon Sep 17 00:00:00 2001 From: xleroy Date: Sat, 26 Nov 2011 15:40:57 +0000 Subject: cparser/*: refactoring of the expansion of read-modify-write operators cparser/PackedStructs: treat r-m-w operations over byte-swapped fields cparser/PackedStructs: allow static initialization of packed structs test/regression: more packedstruct tests git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@1738 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e --- cparser/Bitfields.ml | 24 +----------------------- 1 file changed, 1 insertion(+), 23 deletions(-) (limited to 'cparser/Bitfields.ml') diff --git a/cparser/Bitfields.ml b/cparser/Bitfields.ml index d16f91f..c1b83cb 100644 --- a/cparser/Bitfields.ml +++ b/cparser/Bitfields.ml @@ -201,28 +201,6 @@ let bitfield_assign bf carrier newval = {edesc = EBinop(Oor, oldval_masked, newval_masked, TInt(IUInt,[])); etyp = TInt(IUInt,[])} -(* Transformation of operators *) - -let op_for_incr_decr = function - | Opreincr -> Oadd - | Opredecr -> Osub - | Opostincr -> Oadd - | Opostdecr -> Osub - | _ -> assert false - -let op_for_assignop = function - | Oadd_assign -> Oadd - | Osub_assign -> Osub - | Omul_assign -> Omul - | Odiv_assign -> Odiv - | Omod_assign -> Omod - | Oand_assign -> Oand - | Oor_assign -> Oor - | Oxor_assign -> Oxor - | Oshl_assign -> Oshl - | Oshr_assign -> Oshr - | _ -> assert false - (* Check whether a field access (e.f or e->f) is a bitfield access. If so, return carrier expression (e and *e, respectively) and bitfield_info *) @@ -356,7 +334,7 @@ let transf_expr env ctx e = bind_lvalue env (texp Val e1) (fun base -> let carrier = {edesc = EUnop(Odot bf.bf_carrier, base); etyp = bf.bf_carrier_typ} in - let temp = new_temp tyfield in + let temp = mk_temp env tyfield in let tyres = unary_conversion env tyfield in let settemp = eassign temp (bitfield_extract bf carrier) in let rhs = -- cgit v1.2.3