diff options
author | Léo Gourdin <leo.gourdin@univ-grenoble-alpes.fr> | 2020-12-04 23:26:01 +0100 |
---|---|---|
committer | Léo Gourdin <leo.gourdin@univ-grenoble-alpes.fr> | 2020-12-04 23:26:01 +0100 |
commit | 972f6b9890ea3644626fc097e460035028b940eb (patch) | |
tree | a29e64ad4e978f55f06e19345ee753858f1334e0 /aarch64/OpWeightsAsm.ml | |
parent | c48b7c63592e5930f022452ee6c3f1cf3d1ada97 (diff) | |
download | compcert-kvx-972f6b9890ea3644626fc097e460035028b940eb.tar.gz compcert-kvx-972f6b9890ea3644626fc097e460035028b940eb.zip |
a first working draft on ldp/stp peephole
Diffstat (limited to 'aarch64/OpWeightsAsm.ml')
-rw-r--r-- | aarch64/OpWeightsAsm.ml | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/aarch64/OpWeightsAsm.ml b/aarch64/OpWeightsAsm.ml index 3ce2c68e..44c6f16b 100644 --- a/aarch64/OpWeightsAsm.ml +++ b/aarch64/OpWeightsAsm.ml @@ -70,13 +70,14 @@ module Cortex_A53 = struct | PBasic (PArith (Pcset (_, _))) | PBasic (PArith (Pcsel (_, _, _, _))) -> 6 | PBasic (PArith _) -> 1 | PBasic (PLoad _) -> 3 - | PBasic (PStore (_, _, _)) -> 3 + | PBasic (PStore _) -> 3 | PBasic (Pallocframe (_, _)) -> 3 | PBasic (Pfreeframe (_, _)) -> 1 | PBasic (Ploadsymbol (_, _)) -> 1 | PBasic (Pcvtsw2x (_, _)) -> 2 | PBasic (Pcvtuw2x (_, _)) -> 2 | PBasic (Pcvtx2w _) -> 1 + | PBasic (Pnop) -> 0 | PControl _ -> 6 let resources_of_op (i : instruction) (nargs : int) = @@ -110,13 +111,14 @@ module Cortex_A53 = struct | PBasic (PArith (Pcset (_, _))) | PBasic (PArith (Pcsel (_, _, _, _))) -> [| 1; 1; 1; 0 |] | PBasic (PArith _) -> [| 1; 1; 0; 0 |] | PBasic (PLoad _) -> [| 1; 0; 0; 1 |] - | PBasic (PStore (_, _, _)) -> [| 1; 0; 0; 1 |] + | PBasic (PStore _) -> [| 1; 0; 0; 1 |] | PBasic (Pallocframe (_, _)) -> [| 1; 0; 0; 1 |] | PBasic (Pfreeframe (_, _)) -> [| 1; 1; 0; 0 |] | PBasic (Ploadsymbol (_, _)) -> [| 1; 1; 0; 0 |] | PBasic (Pcvtsw2x (_, _)) -> [| 1; 1; 0; 0 |] | PBasic (Pcvtuw2x (_, _)) -> [| 1; 1; 0; 0 |] | PBasic (Pcvtx2w _) -> [| 1; 1; 0; 0 |] + | PBasic (Pnop) -> [| 0; 0; 0; 0 |] | PControl _ -> resource_bounds (*let non_pipelined_resources_of_op (op : operation) (nargs : int) = |