diff options
author | Bernhard Schommer <bernhardschommer@gmail.com> | 2019-12-13 18:16:06 +0100 |
---|---|---|
committer | Xavier Leroy <xavierleroy@users.noreply.github.com> | 2019-12-21 10:34:53 +0100 |
commit | 4dfcd7d4be18e8bc437ca170782212aa06635a95 (patch) | |
tree | a0dfa75b91b24d82c0864fb7ecc9bed9c5cc73a0 /aarch64 | |
parent | 54fb9faab6a53fad126fd57c3d58b232ff181cd1 (diff) | |
download | compcert-kvx-4dfcd7d4be18e8bc437ca170782212aa06635a95.tar.gz compcert-kvx-4dfcd7d4be18e8bc437ca170782212aa06635a95.zip |
Remove `__builtin_nop` for some architectures. (#208)
The `__builtin_nop` function is documented only for PowerPC.
It was added to the other architectures by copy paste, but has no
known uses. So, remove `__builtin_nop` from all architectures
but PowerPC.
Diffstat (limited to 'aarch64')
-rw-r--r-- | aarch64/Asm.v | 4 | ||||
-rw-r--r-- | aarch64/Asmexpand.ml | 2 | ||||
-rw-r--r-- | aarch64/TargetPrinter.ml | 3 |
3 files changed, 1 insertions, 8 deletions
diff --git a/aarch64/Asm.v b/aarch64/Asm.v index 47cd3051..87fcae8e 100644 --- a/aarch64/Asm.v +++ b/aarch64/Asm.v @@ -298,7 +298,6 @@ Inductive instruction: Type := | Pbtbl (r1: ireg) (tbl: list label) (**r N-way branch through a jump table *) | Pbuiltin (ef: external_function) (args: list (builtin_arg preg)) (res: builtin_res preg) (**r built-in function (pseudo) *) - | Pnop (**r no operation *) | Pcfi_adjust (ofs: int) (**r .cfi_adjust debug directive *) | Pcfi_rel_offset (ofs: int) (**r .cfi_rel_offset debug directive *) . @@ -1112,8 +1111,7 @@ Definition exec_instr (f: function) (i: instruction) (rs: regset) (m: mem) : out | Pfmsub _ _ _ _ _ | Pfnmadd _ _ _ _ _ | Pfnmsub _ _ _ _ _ - | Pnop - | Pcfi_adjust _ + | Pcfi_adjust _ | Pcfi_rel_offset _ => Stuck end. diff --git a/aarch64/Asmexpand.ml b/aarch64/Asmexpand.ml index 471ad501..cbe1cf2f 100644 --- a/aarch64/Asmexpand.ml +++ b/aarch64/Asmexpand.ml @@ -327,8 +327,6 @@ let expand_builtin_inline name args res = (* Synchronization *) | "__builtin_membar", [], _ -> () - | "__builtin_nop", [], _ -> - emit Pnop (* Byte swap *) | ("__builtin_bswap" | "__builtin_bswap32"), [BA(IR a1)], BR(IR res) -> emit (Prev(W, res, a1)) diff --git a/aarch64/TargetPrinter.ml b/aarch64/TargetPrinter.ml index e54673dd..f64083c4 100644 --- a/aarch64/TargetPrinter.ml +++ b/aarch64/TargetPrinter.ml @@ -473,9 +473,6 @@ module Target : TARGET = (* Floating-point conditional select *) | Pfsel(rd, r1, r2, c) -> fprintf oc " fcsel %a, %a, %a, %s\n" dreg rd dreg r1 dreg r2 (condition_name c) - (* No-op *) - | Pnop -> - fprintf oc " nop\n" (* Pseudo-instructions expanded in Asmexpand *) | Pallocframe(sz, linkofs) -> assert false | Pfreeframe(sz, linkofs) -> assert false |