Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

67 lines (60 sloc) 2.223 kb
From: Stephane Glondu <steph@glondu.net>
Date: Tue, 8 Mar 2011 21:17:40 +0100
Subject: [PATCH] Fix ocamlopt w.r.t. binutils 2.21
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bug: http://caml.inria.fr/mantis/view.php?id=5237
Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=617404
Authors: Eric Cooper, spiralvoice
Reviewed-by: Stéphane Glondu <steph@glondu.net>
---
asmcomp/amd64/emit.mlp | 13 +++++++------
asmcomp/i386/emit.mlp | 6 +++---
2 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/asmcomp/amd64/emit.mlp b/asmcomp/amd64/emit.mlp
index 4a3f844..525c6e6 100644
--- a/asmcomp/amd64/emit.mlp
+++ b/asmcomp/amd64/emit.mlp
@@ -679,17 +679,18 @@ let fundecl fundecl =
emit_all true fundecl.fun_body;
List.iter emit_call_gc !call_gc_sites;
emit_call_bound_errors ();
+ begin match Config.system with
+ "linux" | "gnu" ->
+ ` .type {emit_symbol fundecl.fun_name},@function\n`;
+ ` .size {emit_symbol fundecl.fun_name},.-{emit_symbol fundecl.fun_name}\n`
+ | _ -> ()
+ end;
if !float_constants <> [] then begin
if macosx
then ` .literal8\n`
else ` .section .rodata.cst8,\"a\",@progbits\n`;
List.iter emit_float_constant !float_constants
- end;
- match Config.system with
- "linux" | "gnu" ->
- ` .type {emit_symbol fundecl.fun_name},@function\n`;
- ` .size {emit_symbol fundecl.fun_name},.-{emit_symbol fundecl.fun_name}\n`
- | _ -> ()
+ end
(* Emission of data *)
diff --git a/asmcomp/i386/emit.mlp b/asmcomp/i386/emit.mlp
index 2992f29..0b1252c 100644
--- a/asmcomp/i386/emit.mlp
+++ b/asmcomp/i386/emit.mlp
@@ -905,12 +905,12 @@ let fundecl fundecl =
emit_all true fundecl.fun_body;
List.iter emit_call_gc !call_gc_sites;
emit_call_bound_errors ();
- List.iter emit_float_constant !float_constants;
- match Config.system with
+ begin match Config.system with
"linux_elf" | "bsd_elf" | "gnu" ->
` .type {emit_symbol fundecl.fun_name},@function\n`;
` .size {emit_symbol fundecl.fun_name},.-{emit_symbol fundecl.fun_name}\n`
- | _ -> ()
+ | _ -> () end;
+ List.iter emit_float_constant !float_constants
(* Emission of data *)
--
Jump to Line
Something went wrong with that request. Please try again.