diff options
author | David Monniaux <david.monniaux@univ-grenoble-alpes.fr> | 2019-04-25 11:36:28 +0200 |
---|---|---|
committer | David Monniaux <david.monniaux@univ-grenoble-alpes.fr> | 2019-04-25 11:36:28 +0200 |
commit | 2f549eaf7f6bc7e97d8f8a830d18808c2ae66186 (patch) | |
tree | 1c8103567dbc8ce356f039323cb2607a96aac1b9 /mppa_k1c/Asmblockgen.v | |
parent | 5809fa295f23952a2d8b043f6da69d61da3568de (diff) | |
download | compcert-kvx-2f549eaf7f6bc7e97d8f8a830d18808c2ae66186.tar.gz compcert-kvx-2f549eaf7f6bc7e97d8f8a830d18808c2ae66186.zip |
read from bit fields
Diffstat (limited to 'mppa_k1c/Asmblockgen.v')
-rw-r--r-- | mppa_k1c/Asmblockgen.v | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/mppa_k1c/Asmblockgen.v b/mppa_k1c/Asmblockgen.v index b00e4e89..6af18178 100644 --- a/mppa_k1c/Asmblockgen.v +++ b/mppa_k1c/Asmblockgen.v @@ -772,6 +772,20 @@ Definition transl_op OK (Pcmoveu bt r0 rS r1 ::i k) end) + | Oextfz stop start, a1 :: nil => + assertion ((Z.leb start stop) + && (Z.geb start Z.zero) + && (Z.ltb stop Int.zwordsize)); + do rd <- ireg_of res; do rs <- ireg_of a1; + OK (Pextfz stop start rd rs ::i k) + + | Oextfs stop start, a1 :: nil => + assertion ((Z.leb start stop) + && (Z.geb start Z.zero) + && (Z.ltb stop Int.zwordsize)); + do rd <- ireg_of res; do rs <- ireg_of a1; + OK (Pextfs stop start rd rs ::i k) + | _, _ => Error(msg "Asmgenblock.transl_op") end. |