Fix build with binutils-2.21. From Florian Walpen in PR 45246.

This commit is contained in:
wiz 2011-08-15 21:19:33 +00:00
parent 3ecafd3181
commit 0d4279b388
3 changed files with 57 additions and 5 deletions

View file

@ -1,9 +1,9 @@
$NetBSD: distinfo,v 1.56 2011/07/26 21:00:24 abs Exp $
$NetBSD: distinfo,v 1.57 2011/08/15 21:19:33 wiz Exp $
SHA1 (ocaml-3.12.0.tar.bz2) = 33ebbfb1115806f117808f37e40d206c8994943d
RMD160 (ocaml-3.12.0.tar.bz2) = 3d10d5f7431d8200688fa74122e7ed528126a0fa
Size (ocaml-3.12.0.tar.bz2) = 2639049 bytes
SHA1 (patch-aa) = 858f326fe4db7971a05b3b001c6aecc02ecb2903
SHA1 (patch-aa) = 1bedb77b12c457966b2a8b86f756535bfef9c496
SHA1 (patch-ab) = e91cbb94c0897ffd02daebc19835a24c257dccd9
SHA1 (patch-ac) = efe8290b394f40d6675fc9d57557c49ddafdb239
SHA1 (patch-ad) = f2c1dcc3c31db31e2484fdea1076692a63252a87
@ -11,6 +11,7 @@ SHA1 (patch-ag) = f1b751098d3693b92feb26cda87970426bffcaf1
SHA1 (patch-ah) = 3165bbcdb98d09f5161912e51a3131486aa0b488
SHA1 (patch-aj) = 6fd989f1e5dd1263890c14459dd4ab85d75e86cd
SHA1 (patch-an) = 8fb8efecd2b3f0ec6f913a0840f4cfebcbb6161e
SHA1 (patch-asmcomp_amd64_emit.mlp) = 72854ca013303155573417c6c694d03f9f802ac9
SHA1 (patch-at) = 4b16f924f9bad771ac06137ae0b05ca35276b92a
SHA1 (patch-au) = 1e36bcdf39d40e781273ea51df213db05ff46c89
SHA1 (patch-av) = f56c8924b81a620602bc5a67b0c4459b721701d2

View file

@ -1,8 +1,11 @@
$NetBSD: patch-aa,v 1.8 2007/09/14 15:34:10 adam Exp $
$NetBSD: patch-aa,v 1.9 2011/08/15 21:19:33 wiz Exp $
--- asmcomp/i386/emit.mlp.orig 2007-03-07 10:14:29.000000000 +0100
Second chunk: fix build with binutils-2.21.
http://caml.inria.fr/mantis/view.php?id=5237
--- asmcomp/i386/emit.mlp.orig 2010-01-20 16:26:46 +0000
+++ asmcomp/i386/emit.mlp
@@ -860,7 +860,7 @@ let emit_profile () =
@@ -861,7 +861,7 @@ let emit_profile () =
` movl %esp, %ebp\n`;
` pushl %ecx\n`;
` pushl %edx\n`;
@ -11,3 +14,19 @@ $NetBSD: patch-aa,v 1.8 2007/09/14 15:34:10 adam Exp $
` popl %edx\n`;
` popl %ecx\n`;
` popl %eax\n`
@@ -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 *)

View file

@ -0,0 +1,32 @@
$NetBSD: patch-asmcomp_amd64_emit.mlp,v 1.1 2011/08/15 21:19:33 wiz Exp $
Fix build with binutils-2.21.
http://caml.inria.fr/mantis/view.php?id=5237
--- asmcomp/amd64/emit.mlp.orig 2010-06-02 08:55:35 +0000
+++ asmcomp/amd64/emit.mlp
@@ -688,17 +688,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 *)