aboutsummaryrefslogtreecommitdiffstats
path: root/backend/RTLtyping.v
diff options
context:
space:
mode:
authorxleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2008-04-12 12:55:21 +0000
committerxleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2008-04-12 12:55:21 +0000
commitaaa49526068f528f2233de0dace43549432fba52 (patch)
treee675fe11f225858ddd290594fa5ffed2865d5677 /backend/RTLtyping.v
parent845148dea58bbdd041c399a8c9196d9e67bec629 (diff)
downloadcompcert-kvx-aaa49526068f528f2233de0dace43549432fba52.tar.gz
compcert-kvx-aaa49526068f528f2233de0dace43549432fba52.zip
Revu gestion retaddr et link dans Stacking
git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@604 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'backend/RTLtyping.v')
-rw-r--r--backend/RTLtyping.v5
1 files changed, 2 insertions, 3 deletions
diff --git a/backend/RTLtyping.v b/backend/RTLtyping.v
index a30f9e50..fa9dd210 100644
--- a/backend/RTLtyping.v
+++ b/backend/RTLtyping.v
@@ -224,7 +224,7 @@ Definition check_instr (i: instruction) : bool :=
match ros with inl r => check_reg r Tint | inr s => true end
&& check_regs args sig.(sig_args)
&& opt_typ_eq sig.(sig_res) funct.(fn_sig).(sig_res)
- && zeq (Conventions.size_arguments sig) 14
+ && Conventions.tailcall_is_possible sig
| Ialloc arg res s =>
check_reg arg Tint
&& check_reg res Tint
@@ -330,8 +330,7 @@ Proof.
destruct s0; auto. apply check_reg_correct; auto.
eapply proj_sumbool_true; eauto.
apply check_regs_correct; auto.
- rewrite Conventions.tailcall_possible_size.
- eapply proj_sumbool_true; eauto.
+ apply Conventions.tailcall_is_possible_correct; auto.
(* alloc *)
constructor.
apply check_reg_correct; auto.