39 lines
1.2 KiB
Diff
39 lines
1.2 KiB
Diff
From 99cb8f909ad25bcfa674216f5140b6cf1e72aeca Mon Sep 17 00:00:00 2001
|
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
|
Date: Tue, 15 Jul 2014 11:52:26 +0000
|
|
Subject: [PATCH] Disable CSE.
|
|
|
|
This disables the common subexpression elimination (CSE) optimization.
|
|
|
|
This is broken on aarch64:
|
|
http://caml.inria.fr/mantis/view.php?id=6486
|
|
---
|
|
asmcomp/CSEgen.ml | 4 +++-
|
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/asmcomp/CSEgen.ml b/asmcomp/CSEgen.ml
|
|
index 19019e1..260e4fa 100644
|
|
--- a/asmcomp/CSEgen.ml
|
|
+++ b/asmcomp/CSEgen.ml
|
|
@@ -180,7 +180,8 @@ method private keep_checkbounds n =
|
|
(* Perform CSE on the given instruction [i] and its successors.
|
|
[n] is the value numbering current at the beginning of [i]. *)
|
|
|
|
-method private cse n i =
|
|
+method private cse n i = i
|
|
+(*
|
|
match i.desc with
|
|
| Iend | Ireturn | Iop(Itailcall_ind) | Iop(Itailcall_imm _)
|
|
| Iexit _ | Iraise _ ->
|
|
@@ -262,6 +263,7 @@ method private cse n i =
|
|
{i with desc = Itrywith(self#cse n body,
|
|
self#cse empty_numbering handler);
|
|
next = self#cse empty_numbering i.next}
|
|
+*)
|
|
|
|
method fundecl f =
|
|
{f with fun_body = self#cse empty_numbering f.fun_body}
|
|
--
|
|
2.0.1
|
|
|