aboutsummaryrefslogtreecommitdiffstats
path: root/arm/Asmgen.v
diff options
context:
space:
mode:
authorXavier Leroy <xavier.leroy@inria.fr>2017-08-17 09:45:44 +0200
committerXavier Leroy <xavier.leroy@inria.fr>2017-08-17 09:45:44 +0200
commitc9d01df3577a23e20abbe934f6f36f17dbbb82cd (patch)
tree3347d5103efbdd6f0ca445b648763389097d3833 /arm/Asmgen.v
parente5d8d8d2d67daed762f6e0cc8f486b2c1b37bb20 (diff)
downloadcompcert-kvx-c9d01df3577a23e20abbe934f6f36f17dbbb82cd.tar.gz
compcert-kvx-c9d01df3577a23e20abbe934f6f36f17dbbb82cd.zip
ARM: Generate Pcfi_rel_offset directives directly from Asmgen
This is what we do for PowerPC and is more resilient to changes in code generation. We need to give Pcfi_rel_offset a dynamic semantics, but that's just a no-op.
Diffstat (limited to 'arm/Asmgen.v')
-rw-r--r--arm/Asmgen.v3
1 files changed, 2 insertions, 1 deletions
diff --git a/arm/Asmgen.v b/arm/Asmgen.v
index 125e95ff..8c49d881 100644
--- a/arm/Asmgen.v
+++ b/arm/Asmgen.v
@@ -790,7 +790,8 @@ Definition transl_function (f: Mach.function) :=
do c <- transl_code f f.(Mach.fn_code) true;
OK (mkfunction f.(Mach.fn_sig)
(Pallocframe f.(fn_stacksize) f.(fn_link_ofs) ::
- Psavelr f.(fn_retaddr_ofs) :: c)).
+ Psavelr f.(fn_retaddr_ofs) ::
+ Pcfi_rel_offset (Ptrofs.to_int f.(fn_retaddr_ofs)):: c)).
Definition transf_function (f: Mach.function) : res Asm.function :=
do tf <- transl_function f;