diff options
author | Xavier Leroy <xavier.leroy@college-de-france.fr> | 2022-06-24 18:55:21 +0200 |
---|---|---|
committer | Xavier Leroy <xavier.leroy@college-de-france.fr> | 2022-06-24 19:22:27 +0200 |
commit | a34adc8e005447e7fa44ca3b71db35ceb7facb4c (patch) | |
tree | d1c7308d30254d39694877fceaccb8a168a2660a /riscV/Asmgenproof.v | |
parent | 44a668fbd81a587a17b680bebecf016519915a69 (diff) | |
download | compcert-a34adc8e005447e7fa44ca3b71db35ceb7facb4c.tar.gz compcert-a34adc8e005447e7fa44ca3b71db35ceb7facb4c.zip |
Expand "j_s symb" to "jump symb, x31" assembly pseudo-instruction
As suggested by Léo Gourdin in #437.
The previous expansion as a plain "j" instruction fails when the jump
offset is too large to be represented (issue #436).
Fixes: #436
Closes: #437
Diffstat (limited to 'riscV/Asmgenproof.v')
-rw-r--r-- | riscV/Asmgenproof.v | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/riscV/Asmgenproof.v b/riscV/Asmgenproof.v index 798dad9f..0d3c8042 100644 --- a/riscV/Asmgenproof.v +++ b/riscV/Asmgenproof.v @@ -816,6 +816,7 @@ Local Transparent destroyed_by_op. (* match states *) econstructor; eauto. apply agree_set_other; auto with asmgen. + apply agree_set_other; auto with asmgen. Simpl. unfold Genv.symbol_address. rewrite symbols_preserved. rewrite H. auto. - (* Mbuiltin *) |