summaryrefslogtreecommitdiff
path: root/lang/ocaml/patches/patch-ac
diff options
context:
space:
mode:
authoradrianp <adrianp@pkgsrc.org>2005-02-04 21:35:51 +0000
committeradrianp <adrianp@pkgsrc.org>2005-02-04 21:35:51 +0000
commitda24824e10d5d8ce298c917c33bfb80d10df7897 (patch)
treed06c5d02c1be3e73fa85ace5be9ada5ca7a1238c /lang/ocaml/patches/patch-ac
parent94c8ce7c690de2758a4f789ca3f7b7f38ebf02cf (diff)
downloadpkgsrc-da24824e10d5d8ce298c917c33bfb80d10df7897.tar.gz
- Update from 3.06 to 3.08.2
- Lots of changes/bugfixes - see Changes for all the details
Diffstat (limited to 'lang/ocaml/patches/patch-ac')
-rw-r--r--lang/ocaml/patches/patch-ac125
1 files changed, 21 insertions, 104 deletions
diff --git a/lang/ocaml/patches/patch-ac b/lang/ocaml/patches/patch-ac
index 071e6c27e16..24fbeacf619 100644
--- a/lang/ocaml/patches/patch-ac
+++ b/lang/ocaml/patches/patch-ac
@@ -1,69 +1,8 @@
-$NetBSD: patch-ac,v 1.3 2004/04/22 09:18:36 tron Exp $
+$NetBSD: patch-ac,v 1.4 2005/02/04 21:35:51 adrianp Exp $
---- asmcomp/power/emit.mlp.orig Mon Jul 22 18:37:53 2002
-+++ asmcomp/power/emit.mlp Thu Apr 22 10:34:38 2004
-@@ -65,7 +65,7 @@
-
- let emit_symbol =
- match Config.system with
-- "aix" | "elf" -> (fun s -> Emitaux.emit_symbol '.' s)
-+ "aix" | "elf" | "bsd" -> (fun s -> Emitaux.emit_symbol '.' s)
- | "rhapsody" -> (fun s -> emit_char '_'; Emitaux.emit_symbol '$' s)
- | _ -> assert false
-
-@@ -78,7 +78,7 @@
- let label_prefix =
- match Config.system with
- "aix" -> "L.."
-- | "elf" -> ".L"
-+ | "elf" | "bsd" -> ".L"
- | "rhapsody" -> "L"
- | _ -> assert false
-
-@@ -90,21 +90,21 @@
- let data_space =
- match Config.system with
- "aix" -> " .csect .data[RW]\n"
-- | "elf" -> " .section \".data\"\n"
-+ | "elf" | "bsd" -> " .section \".data\"\n"
- | "rhapsody" -> " .data\n"
- | _ -> assert false
-
- let code_space =
- match Config.system with
- "aix" -> " .csect .text[PR]\n"
-- | "elf" -> " .section \".text\"\n"
-+ | "elf" | "bsd" -> " .section \".text\"\n"
- | "rhapsody" -> " .text\n"
- | _ -> assert false
-
- let rodata_space =
- match Config.system with
- "aix" -> " .csect .data[RW]\n" (* ?? *)
-- | "elf" -> " .section \".rodata\"\n"
-+ | "elf" | "bsd" -> " .section \".rodata\"\n"
- | "rhapsody" -> " .const\n"
- | _ -> assert false
-
-@@ -157,7 +157,7 @@
-
- let emit_upper emit_fun arg =
- match Config.system with
-- "elf" ->
-+ "elf" | "bsd" ->
- emit_fun arg; emit_string "@ha"
- | "rhapsody" ->
- emit_string "ha16("; emit_fun arg; emit_string ")"
-@@ -165,7 +165,7 @@
-
- let emit_lower emit_fun arg =
- match Config.system with
-- "elf" ->
-+ "elf" | "bsd" ->
- emit_fun arg; emit_string "@l"
- | "rhapsody" ->
- emit_string "lo16("; emit_fun arg; emit_string ")"
-@@ -935,6 +935,30 @@
+--- asmcomp/power/emit.mlp.orig 2004-10-14 15:39:35.000000000 +0100
++++ asmcomp/power/emit.mlp 2004-10-14 15:41:11.000000000 +0100
+@@ -793,6 +793,30 @@
emit_instr i None;
emit_all i.next
@@ -72,47 +11,25 @@ $NetBSD: patch-ac,v 1.3 2004/04/22 09:18:36 tron Exp $
+let emit_profile () =
+ match Config.system with
+ "bsd" ->
-+ ` stwu 1, -32(1)\n`;
-+ ` mflr 0\n`;
-+ ` stw 0, 4(1)\n`;
-+ ` stw 2, 8(1)\n`;
-+ ` stw 3, 12(1)\n`;
-+ ` stw 4, 16(1)\n`;
-+ ` stw 5, 20(1)\n`;
-+ ` stw 6, 24(1)\n`;
-+ ` stw 7, 28(1)\n`;
-+ ` bl {emit_symbol "_mcount"}\n`;
-+ ` lwz 2, 8(1)\n`;
-+ ` lwz 3, 12(1)\n`;
-+ ` lwz 4, 16(1)\n`;
-+ ` lwz 5, 20(1)\n`;
-+ ` lwz 6, 24(1)\n`;
-+ ` lwz 7, 28(1)\n`;
-+ ` addic 1, 1, 32\n`;
++ ` stwu 1, -32(1)\n`;
++ ` mflr 0\n`;
++ ` stw 0, 4(1)\n`;
++ ` stw 2, 8(1)\n`;
++ ` stw 3, 12(1)\n`;
++ ` stw 4, 16(1)\n`;
++ ` stw 5, 20(1)\n`;
++ ` stw 6, 24(1)\n`;
++ ` stw 7, 28(1)\n`;
++ ` bl {emit_symbol "_mcount"}\n`;
++ ` lwz 2, 8(1)\n`;
++ ` lwz 3, 12(1)\n`;
++ ` lwz 4, 16(1)\n`;
++ ` lwz 5, 20(1)\n`;
++ ` lwz 6, 24(1)\n`;
++ ` lwz 7, 28(1)\n`;
++ ` addic 1, 1, 32\n`;
+ | _ -> () (*unsupported yet*)
+
(* Emission of a function declaration *)
let fundecl fundecl =
-@@ -951,10 +975,11 @@
- ` .csect {emit_symbol fundecl.fun_name}[DS]\n`;
- `{emit_symbol fundecl.fun_name}:\n`;
- ` .long .{emit_symbol fundecl.fun_name}, TOC[tc0], 0\n`
-- | "elf" ->
-+ | "elf" | "bsd" ->
- ` .type {emit_symbol fundecl.fun_name}, @function\n`
- | _ -> ()
- end;
-+ if !Clflags.gprofile then emit_profile();
- emit_string code_space;
- ` .align 2\n`;
- `{emit_codesymbol fundecl.fun_name}:\n`;
-@@ -996,7 +1021,7 @@
-
- let declare_global_data s =
- ` .globl {emit_symbol s}\n`;
-- if Config.system = "elf" then
-+ if Config.system = "elf" || Config.system = "bsd" then
- ` .type {emit_symbol s}, @object\n`
-
- let emit_item = function