diff options
author | KC Sivaramakrishnan <kc@kcsrk.info> | 2020-07-31 18:24:16 +0530 |
---|---|---|
committer | KC Sivaramakrishnan <kc@kcsrk.info> | 2020-07-31 18:24:16 +0530 |
commit | afda9bcbd8ef0df1b38d78be0390efb89f8a9e4e (patch) | |
tree | 39f0a599b2598f0cf067765d6b62a3af56727c34 /asmcomp/cmmgen.ml | |
parent | 557ccefb684bd6217f7574729dca5f1e5348b56e (diff) | |
download | ocaml-afda9bcbd8ef0df1b38d78be0390efb89f8a9e4e.tar.gz |
Add a primitive to insert nop instruction
Diffstat (limited to 'asmcomp/cmmgen.ml')
-rw-r--r-- | asmcomp/cmmgen.ml | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/asmcomp/cmmgen.ml b/asmcomp/cmmgen.ml index e1d00944c4..f2fc41c6e3 100644 --- a/asmcomp/cmmgen.ml +++ b/asmcomp/cmmgen.ml @@ -532,7 +532,7 @@ let rec transl env e = -> fatal_error "Cmmgen.transl:prim, wrong arity" | ((Pfield_computed|Psequand - | Prunstack | Pperform | Presume | Preperform | Ppoll + | Prunstack | Pperform | Presume | Preperform | Ppoll | Pnop | Patomic_load _ | Patomic_exchange | Patomic_cas | Patomic_fetch_add | Psequor | Pnot | Pnegint | Paddint | Psubint @@ -841,6 +841,8 @@ and transl_prim_1 env p arg dbg = dbg) | Ppoll -> Cop(Cpoll, [transl env arg], dbg) + | Pnop -> + Cop(Cnop, [transl env arg], dbg) | Patomic_load _ -> Cop(mk_load_mut Word_int, [transl env arg], dbg) | (Pfield_computed | Psequand | Psequor @@ -1023,7 +1025,7 @@ and transl_prim_2 env p arg1 arg2 dbg = | Patomic_fetch_add -> Cop (Cextcall ("caml_atomic_fetch_add", typ_int, false, None), [transl env arg1; transl env arg2], dbg) - | Prunstack | Pperform | Presume | Preperform | Ppoll + | Prunstack | Pperform | Presume | Preperform | Ppoll | Pnop | Patomic_cas | Patomic_load _ | Pnot | Pnegint | Pintoffloat | Pfloatofint | Pnegfloat | Pabsfloat | Pstringlength | Pbyteslength | Pbytessetu | Pbytessets @@ -1096,7 +1098,7 @@ and transl_prim_3 env p arg1 arg2 arg3 dbg = transl env arg2; transl env arg3], dbg) - | Pperform | Ppoll + | Pperform | Ppoll | Pnop | Patomic_exchange | Patomic_fetch_add | Patomic_load _ | Pfield_computed | Psequand | Psequor | Pnot | Pnegint | Paddint | Psubint | Pmulint | Pandint | Porint | Pxorint | Plslint | Plsrint | Pasrint |