From: Stephane Glondu 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 --- 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 *) --