this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge pull request #18245 from dra27/arm64-gpr1330

Restore ARM64 support for 4.02-4.05

authored by

Anil Madhavapeddy and committed by
GitHub
8dcf66c9 58271a2c

+603 -18
+58
packages/ocaml-base-compiler/ocaml-base-compiler.4.02.0/files/gpr1330.patch
··· 1 + From 475c2dc0c7ae197772bfcdf0dd5a17ffc5d4fb3b Mon Sep 17 00:00:00 2001 2 + From: Mark Shinwell <mshinwell@gmail.com> 3 + Date: Wed, 13 Sep 2017 10:23:16 +0100 4 + Subject: [PATCH] AArch64 GOT fixed 5 + 6 + --- 7 + asmcomp/arm64/emit.mlp | 12 ++++++++++-- 8 + asmcomp/arm64/selection.ml | 4 ++-- 9 + 2 files changed, 12 insertions(+), 4 deletions(-) 10 + 11 + diff --git a/asmcomp/arm64/emit.mlp b/asmcomp/arm64/emit.mlp 12 + index 9cca60b26..6b9f0274a 100644 13 + --- a/asmcomp/arm64/emit.mlp 14 + +++ b/asmcomp/arm64/emit.mlp 15 + @@ -325,7 +325,7 @@ let emit_literals() = 16 + (* Emit code to load the address of a symbol *) 17 + 18 + let emit_load_symbol_addr dst s = 19 + - if (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit s then begin 20 + + if not !Clflags.dlcode then begin 21 + ` adrp {emit_reg dst}, {emit_symbol s}\n`; 22 + ` add {emit_reg dst}, {emit_reg dst}, #:lo12:{emit_symbol s}\n` 23 + end else begin 24 + @@ -923,7 +923,15 @@ let fundecl fundecl = 25 + 26 + let emit_item = function 27 + | Cglobal_symbol s -> ` .globl {emit_symbol s}\n`; 28 + - | Cdefine_symbol s -> `{emit_symbol s}:\n` 29 + + | Cdefine_symbol s -> 30 + + if !Clflags.dlcode then begin 31 + + (* GOT relocations against non-global symbols don't seem to work 32 + + properly: GOT entries are not created for the symbols and the 33 + + relocations evaluate to random other GOT entries. For the moment 34 + + force all symbols to be global. *) 35 + + ` .globl {emit_symbol s}\n`; 36 + + end; 37 + + `{emit_symbol s}:\n` 38 + | Cdefine_label lbl -> `{emit_data_label lbl}:\n` 39 + | Cint8 n -> ` .byte {emit_int n}\n` 40 + | Cint16 n -> ` .short {emit_int n}\n` 41 + diff --git a/asmcomp/arm64/selection.ml b/asmcomp/arm64/selection.ml 42 + index d7d55a938..849cd0896 100644 43 + --- a/asmcomp/arm64/selection.ml 44 + +++ b/asmcomp/arm64/selection.ml 45 + @@ -84,8 +84,8 @@ let inline_ops = 46 + [ "sqrt"; "caml_bswap16_direct"; "caml_int32_direct_bswap"; 47 + "caml_int64_direct_bswap"; "caml_nativeint_direct_bswap" ] 48 + 49 + -let use_direct_addressing symb = 50 + - (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit symb 51 + +let use_direct_addressing _symb = 52 + + not !Clflags.dlcode 53 + 54 + (* Instruction selection *) 55 + 56 + -- 57 + 2.17.1 58 +
+9 -2
packages/ocaml-base-compiler/ocaml-base-compiler.4.02.0/opam
··· 1 1 opam-version: "2.0" 2 2 synopsis: "Official 4.02.0 release" 3 3 maintainer: "platform@lists.ocaml.org" 4 + authors: ["Xavier Leroy" "Damien Doligez" "Alain Frisch" "Jacques Garrigue" "Didier Rémy" "Jérôme Vouillon"] 5 + homepage: "https://ocaml.org" 6 + bug-reports: "https://github.com/ocaml/ocaml/issues" 7 + dev-repo: "git+https://github.com/ocaml/ocaml.git#4.02" 4 8 depends: [ 5 9 "ocaml" {= "4.02.0" & post} 6 10 "base-unix" {post} ··· 39 43 src: "http://caml.inria.fr/pub/distrib/ocaml-4.02/ocaml-4.02.0.tar.gz" 40 44 checksum: "md5=8bba7e7d872083af1723dd450e07a5f4" 41 45 } 42 - patches: ["fix-gcc10.patch"] 43 - extra-files: [ ["fix-gcc10.patch" "md5=91a4a258611302bc57f4d9fadb7fc14d"] ] 46 + patches: ["fix-gcc10.patch" "gpr1330.patch"] 47 + extra-files: [ 48 + ["fix-gcc10.patch" "md5=91a4a258611302bc57f4d9fadb7fc14d"] 49 + ["gpr1330.patch" "md5=f6e2574d7b63d3de281f6c48984e2c71"] 50 + ] 44 51 available: !(os = "macos" & arch = "arm64") & arch != "ppc64"
+58
packages/ocaml-base-compiler/ocaml-base-compiler.4.02.1/files/gpr1330.patch
··· 1 + From 475c2dc0c7ae197772bfcdf0dd5a17ffc5d4fb3b Mon Sep 17 00:00:00 2001 2 + From: Mark Shinwell <mshinwell@gmail.com> 3 + Date: Wed, 13 Sep 2017 10:23:16 +0100 4 + Subject: [PATCH] AArch64 GOT fixed 5 + 6 + --- 7 + asmcomp/arm64/emit.mlp | 12 ++++++++++-- 8 + asmcomp/arm64/selection.ml | 4 ++-- 9 + 2 files changed, 12 insertions(+), 4 deletions(-) 10 + 11 + diff --git a/asmcomp/arm64/emit.mlp b/asmcomp/arm64/emit.mlp 12 + index 9cca60b26..6b9f0274a 100644 13 + --- a/asmcomp/arm64/emit.mlp 14 + +++ b/asmcomp/arm64/emit.mlp 15 + @@ -325,7 +325,7 @@ let emit_literals() = 16 + (* Emit code to load the address of a symbol *) 17 + 18 + let emit_load_symbol_addr dst s = 19 + - if (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit s then begin 20 + + if not !Clflags.dlcode then begin 21 + ` adrp {emit_reg dst}, {emit_symbol s}\n`; 22 + ` add {emit_reg dst}, {emit_reg dst}, #:lo12:{emit_symbol s}\n` 23 + end else begin 24 + @@ -923,7 +923,15 @@ let fundecl fundecl = 25 + 26 + let emit_item = function 27 + | Cglobal_symbol s -> ` .globl {emit_symbol s}\n`; 28 + - | Cdefine_symbol s -> `{emit_symbol s}:\n` 29 + + | Cdefine_symbol s -> 30 + + if !Clflags.dlcode then begin 31 + + (* GOT relocations against non-global symbols don't seem to work 32 + + properly: GOT entries are not created for the symbols and the 33 + + relocations evaluate to random other GOT entries. For the moment 34 + + force all symbols to be global. *) 35 + + ` .globl {emit_symbol s}\n`; 36 + + end; 37 + + `{emit_symbol s}:\n` 38 + | Cdefine_label lbl -> `{emit_data_label lbl}:\n` 39 + | Cint8 n -> ` .byte {emit_int n}\n` 40 + | Cint16 n -> ` .short {emit_int n}\n` 41 + diff --git a/asmcomp/arm64/selection.ml b/asmcomp/arm64/selection.ml 42 + index d7d55a938..849cd0896 100644 43 + --- a/asmcomp/arm64/selection.ml 44 + +++ b/asmcomp/arm64/selection.ml 45 + @@ -84,8 +84,8 @@ let inline_ops = 46 + [ "sqrt"; "caml_bswap16_direct"; "caml_int32_direct_bswap"; 47 + "caml_int64_direct_bswap"; "caml_nativeint_direct_bswap" ] 48 + 49 + -let use_direct_addressing symb = 50 + - (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit symb 51 + +let use_direct_addressing _symb = 52 + + not !Clflags.dlcode 53 + 54 + (* Instruction selection *) 55 + 56 + -- 57 + 2.17.1 58 +
+9 -2
packages/ocaml-base-compiler/ocaml-base-compiler.4.02.1/opam
··· 1 1 opam-version: "2.0" 2 2 synopsis: "Official 4.02.1 release" 3 3 maintainer: "platform@lists.ocaml.org" 4 + authors: ["Xavier Leroy" "Damien Doligez" "Alain Frisch" "Jacques Garrigue" "Didier Rémy" "Jérôme Vouillon"] 5 + homepage: "https://ocaml.org" 6 + bug-reports: "https://github.com/ocaml/ocaml/issues" 7 + dev-repo: "git+https://github.com/ocaml/ocaml.git#4.02" 4 8 depends: [ 5 9 "ocaml" {= "4.02.1" & post} 6 10 "base-unix" {post} ··· 39 43 src: "http://caml.inria.fr/pub/distrib/ocaml-4.02/ocaml-4.02.1.tar.gz" 40 44 checksum: "md5=3c35318eefd201f96797c093c920b343" 41 45 } 42 - patches: ["fix-gcc10.patch"] 43 - extra-files: [ ["fix-gcc10.patch" "md5=4afa0ebb0a06b65e95e4906e1dced628"] ] 46 + patches: ["fix-gcc10.patch" "gpr1330.patch"] 47 + extra-files: [ 48 + ["fix-gcc10.patch" "md5=4afa0ebb0a06b65e95e4906e1dced628"] 49 + ["gpr1330.patch" "md5=f6e2574d7b63d3de281f6c48984e2c71"] 50 + ] 44 51 available: !(os = "macos" & arch = "arm64") & arch != "ppc64"
+58
packages/ocaml-base-compiler/ocaml-base-compiler.4.02.2/files/gpr1330.patch
··· 1 + From 475c2dc0c7ae197772bfcdf0dd5a17ffc5d4fb3b Mon Sep 17 00:00:00 2001 2 + From: Mark Shinwell <mshinwell@gmail.com> 3 + Date: Wed, 13 Sep 2017 10:23:16 +0100 4 + Subject: [PATCH] AArch64 GOT fixed 5 + 6 + --- 7 + asmcomp/arm64/emit.mlp | 12 ++++++++++-- 8 + asmcomp/arm64/selection.ml | 4 ++-- 9 + 2 files changed, 12 insertions(+), 4 deletions(-) 10 + 11 + diff --git a/asmcomp/arm64/emit.mlp b/asmcomp/arm64/emit.mlp 12 + index 9cca60b26..6b9f0274a 100644 13 + --- a/asmcomp/arm64/emit.mlp 14 + +++ b/asmcomp/arm64/emit.mlp 15 + @@ -325,7 +325,7 @@ let emit_literals() = 16 + (* Emit code to load the address of a symbol *) 17 + 18 + let emit_load_symbol_addr dst s = 19 + - if (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit s then begin 20 + + if not !Clflags.dlcode then begin 21 + ` adrp {emit_reg dst}, {emit_symbol s}\n`; 22 + ` add {emit_reg dst}, {emit_reg dst}, #:lo12:{emit_symbol s}\n` 23 + end else begin 24 + @@ -923,7 +923,15 @@ let fundecl fundecl = 25 + 26 + let emit_item = function 27 + | Cglobal_symbol s -> ` .globl {emit_symbol s}\n`; 28 + - | Cdefine_symbol s -> `{emit_symbol s}:\n` 29 + + | Cdefine_symbol s -> 30 + + if !Clflags.dlcode then begin 31 + + (* GOT relocations against non-global symbols don't seem to work 32 + + properly: GOT entries are not created for the symbols and the 33 + + relocations evaluate to random other GOT entries. For the moment 34 + + force all symbols to be global. *) 35 + + ` .globl {emit_symbol s}\n`; 36 + + end; 37 + + `{emit_symbol s}:\n` 38 + | Cdefine_label lbl -> `{emit_data_label lbl}:\n` 39 + | Cint8 n -> ` .byte {emit_int n}\n` 40 + | Cint16 n -> ` .short {emit_int n}\n` 41 + diff --git a/asmcomp/arm64/selection.ml b/asmcomp/arm64/selection.ml 42 + index d7d55a938..849cd0896 100644 43 + --- a/asmcomp/arm64/selection.ml 44 + +++ b/asmcomp/arm64/selection.ml 45 + @@ -84,8 +84,8 @@ let inline_ops = 46 + [ "sqrt"; "caml_bswap16_direct"; "caml_int32_direct_bswap"; 47 + "caml_int64_direct_bswap"; "caml_nativeint_direct_bswap" ] 48 + 49 + -let use_direct_addressing symb = 50 + - (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit symb 51 + +let use_direct_addressing _symb = 52 + + not !Clflags.dlcode 53 + 54 + (* Instruction selection *) 55 + 56 + -- 57 + 2.17.1 58 +
+9 -2
packages/ocaml-base-compiler/ocaml-base-compiler.4.02.2/opam
··· 1 1 opam-version: "2.0" 2 2 synopsis: "Official 4.02.2 release" 3 3 maintainer: "platform@lists.ocaml.org" 4 + authors: ["Xavier Leroy" "Damien Doligez" "Alain Frisch" "Jacques Garrigue" "Didier Rémy" "Jérôme Vouillon"] 5 + homepage: "https://ocaml.org" 6 + bug-reports: "https://github.com/ocaml/ocaml/issues" 7 + dev-repo: "git+https://github.com/ocaml/ocaml.git#4.02" 4 8 depends: [ 5 9 "ocaml" {= "4.02.2" & post} 6 10 "base-unix" {post} ··· 39 43 src: "http://caml.inria.fr/pub/distrib/ocaml-4.02/ocaml-4.02.2.tar.gz" 40 44 checksum: "md5=359ad0ef89717341767142f2a4d050b2" 41 45 } 42 - patches: ["fix-gcc10.patch"] 43 - extra-files: [ ["fix-gcc10.patch" "md5=d40cd243f53876ba0b7e181ac16836a9"] ] 46 + patches: ["fix-gcc10.patch" "gpr1330.patch"] 47 + extra-files: [ 48 + ["fix-gcc10.patch" "md5=d40cd243f53876ba0b7e181ac16836a9"] 49 + ["gpr1330.patch" "md5=f6e2574d7b63d3de281f6c48984e2c71"] 50 + ] 44 51 available: !(os = "macos" & arch = "arm64") & arch != "ppc64"
+58
packages/ocaml-base-compiler/ocaml-base-compiler.4.02.3/files/gpr1330.patch
··· 1 + From 475c2dc0c7ae197772bfcdf0dd5a17ffc5d4fb3b Mon Sep 17 00:00:00 2001 2 + From: Mark Shinwell <mshinwell@gmail.com> 3 + Date: Wed, 13 Sep 2017 10:23:16 +0100 4 + Subject: [PATCH] AArch64 GOT fixed 5 + 6 + --- 7 + asmcomp/arm64/emit.mlp | 12 ++++++++++-- 8 + asmcomp/arm64/selection.ml | 4 ++-- 9 + 2 files changed, 12 insertions(+), 4 deletions(-) 10 + 11 + diff --git a/asmcomp/arm64/emit.mlp b/asmcomp/arm64/emit.mlp 12 + index 9cca60b26..6b9f0274a 100644 13 + --- a/asmcomp/arm64/emit.mlp 14 + +++ b/asmcomp/arm64/emit.mlp 15 + @@ -325,7 +325,7 @@ let emit_literals() = 16 + (* Emit code to load the address of a symbol *) 17 + 18 + let emit_load_symbol_addr dst s = 19 + - if (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit s then begin 20 + + if not !Clflags.dlcode then begin 21 + ` adrp {emit_reg dst}, {emit_symbol s}\n`; 22 + ` add {emit_reg dst}, {emit_reg dst}, #:lo12:{emit_symbol s}\n` 23 + end else begin 24 + @@ -923,7 +923,15 @@ let fundecl fundecl = 25 + 26 + let emit_item = function 27 + | Cglobal_symbol s -> ` .globl {emit_symbol s}\n`; 28 + - | Cdefine_symbol s -> `{emit_symbol s}:\n` 29 + + | Cdefine_symbol s -> 30 + + if !Clflags.dlcode then begin 31 + + (* GOT relocations against non-global symbols don't seem to work 32 + + properly: GOT entries are not created for the symbols and the 33 + + relocations evaluate to random other GOT entries. For the moment 34 + + force all symbols to be global. *) 35 + + ` .globl {emit_symbol s}\n`; 36 + + end; 37 + + `{emit_symbol s}:\n` 38 + | Cdefine_label lbl -> `{emit_data_label lbl}:\n` 39 + | Cint8 n -> ` .byte {emit_int n}\n` 40 + | Cint16 n -> ` .short {emit_int n}\n` 41 + diff --git a/asmcomp/arm64/selection.ml b/asmcomp/arm64/selection.ml 42 + index d7d55a938..849cd0896 100644 43 + --- a/asmcomp/arm64/selection.ml 44 + +++ b/asmcomp/arm64/selection.ml 45 + @@ -84,8 +84,8 @@ let inline_ops = 46 + [ "sqrt"; "caml_bswap16_direct"; "caml_int32_direct_bswap"; 47 + "caml_int64_direct_bswap"; "caml_nativeint_direct_bswap" ] 48 + 49 + -let use_direct_addressing symb = 50 + - (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit symb 51 + +let use_direct_addressing _symb = 52 + + not !Clflags.dlcode 53 + 54 + (* Instruction selection *) 55 + 56 + -- 57 + 2.17.1 58 +
+9 -2
packages/ocaml-base-compiler/ocaml-base-compiler.4.02.3/opam
··· 1 1 opam-version: "2.0" 2 2 synopsis: "Official 4.02.3 release" 3 3 maintainer: "platform@lists.ocaml.org" 4 + authors: ["Xavier Leroy" "Damien Doligez" "Alain Frisch" "Jacques Garrigue" "Didier Rémy" "Jérôme Vouillon"] 5 + homepage: "https://ocaml.org" 6 + bug-reports: "https://github.com/ocaml/ocaml/issues" 7 + dev-repo: "git+https://github.com/ocaml/ocaml.git#4.02" 4 8 depends: [ 5 9 "ocaml" {= "4.02.3" & post} 6 10 "base-unix" {post} ··· 38 42 src: "http://caml.inria.fr/pub/distrib/ocaml-4.02/ocaml-4.02.3.tar.gz" 39 43 checksum: "md5=ef1a324608c97031cbd92a442d685ab7" 40 44 } 41 - patches: ["fix-gcc10.patch"] 42 - extra-files: [ ["fix-gcc10.patch" "md5=4516183897da9033f49dd291fa198b8c"] ] 45 + patches: ["fix-gcc10.patch" "gpr1330.patch"] 46 + extra-files: [ 47 + ["fix-gcc10.patch" "md5=4516183897da9033f49dd291fa198b8c"] 48 + ["gpr1330.patch" "md5=f6e2574d7b63d3de281f6c48984e2c71"] 49 + ] 43 50 available: !(os = "macos" & arch = "arm64") & arch != "ppc64"
+58
packages/ocaml-base-compiler/ocaml-base-compiler.4.03.0/files/gpr1330.patch
··· 1 + From 475c2dc0c7ae197772bfcdf0dd5a17ffc5d4fb3b Mon Sep 17 00:00:00 2001 2 + From: Mark Shinwell <mshinwell@gmail.com> 3 + Date: Wed, 13 Sep 2017 10:23:16 +0100 4 + Subject: [PATCH] AArch64 GOT fixed 5 + 6 + --- 7 + asmcomp/arm64/emit.mlp | 12 ++++++++++-- 8 + asmcomp/arm64/selection.ml | 4 ++-- 9 + 2 files changed, 12 insertions(+), 4 deletions(-) 10 + 11 + diff --git a/asmcomp/arm64/emit.mlp b/asmcomp/arm64/emit.mlp 12 + index 9cca60b26..6b9f0274a 100644 13 + --- a/asmcomp/arm64/emit.mlp 14 + +++ b/asmcomp/arm64/emit.mlp 15 + @@ -325,7 +325,7 @@ let emit_literals() = 16 + (* Emit code to load the address of a symbol *) 17 + 18 + let emit_load_symbol_addr dst s = 19 + - if (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit s then begin 20 + + if not !Clflags.dlcode then begin 21 + ` adrp {emit_reg dst}, {emit_symbol s}\n`; 22 + ` add {emit_reg dst}, {emit_reg dst}, #:lo12:{emit_symbol s}\n` 23 + end else begin 24 + @@ -923,7 +923,15 @@ let fundecl fundecl = 25 + 26 + let emit_item = function 27 + | Cglobal_symbol s -> ` .globl {emit_symbol s}\n`; 28 + - | Cdefine_symbol s -> `{emit_symbol s}:\n` 29 + + | Cdefine_symbol s -> 30 + + if !Clflags.dlcode then begin 31 + + (* GOT relocations against non-global symbols don't seem to work 32 + + properly: GOT entries are not created for the symbols and the 33 + + relocations evaluate to random other GOT entries. For the moment 34 + + force all symbols to be global. *) 35 + + ` .globl {emit_symbol s}\n`; 36 + + end; 37 + + `{emit_symbol s}:\n` 38 + | Cdefine_label lbl -> `{emit_data_label lbl}:\n` 39 + | Cint8 n -> ` .byte {emit_int n}\n` 40 + | Cint16 n -> ` .short {emit_int n}\n` 41 + diff --git a/asmcomp/arm64/selection.ml b/asmcomp/arm64/selection.ml 42 + index d7d55a938..849cd0896 100644 43 + --- a/asmcomp/arm64/selection.ml 44 + +++ b/asmcomp/arm64/selection.ml 45 + @@ -84,8 +84,8 @@ let inline_ops = 46 + [ "sqrt"; "caml_bswap16_direct"; "caml_int32_direct_bswap"; 47 + "caml_int64_direct_bswap"; "caml_nativeint_direct_bswap" ] 48 + 49 + -let use_direct_addressing symb = 50 + - (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit symb 51 + +let use_direct_addressing _symb = 52 + + not !Clflags.dlcode 53 + 54 + (* Instruction selection *) 55 + 56 + -- 57 + 2.17.1 58 +
+9 -2
packages/ocaml-base-compiler/ocaml-base-compiler.4.03.0/opam
··· 1 1 opam-version: "2.0" 2 2 synopsis: "Official 4.03.0 release" 3 3 maintainer: "platform@lists.ocaml.org" 4 + authors: ["Xavier Leroy" "Damien Doligez" "Alain Frisch" "Jacques Garrigue" "Didier Rémy" "Jérôme Vouillon"] 5 + homepage: "https://ocaml.org" 6 + bug-reports: "https://github.com/ocaml/ocaml/issues" 7 + dev-repo: "git+https://github.com/ocaml/ocaml.git#4.03" 4 8 depends: [ 5 9 "ocaml" {= "4.03.0" & post} 6 10 "base-unix" {post} ··· 38 42 src: "https://github.com/ocaml/ocaml/archive/4.03.0.tar.gz" 39 43 checksum: "md5=4ddf4977de7708f11adad692c63e87ec" 40 44 } 41 - patches: ["fix-gcc10.patch"] 42 - extra-files: [ ["fix-gcc10.patch" "md5=4370afea8ee2dea768b0fcba52394a2f"] ] 45 + patches: ["fix-gcc10.patch" "gpr1330.patch"] 46 + extra-files: [ 47 + ["fix-gcc10.patch" "md5=4370afea8ee2dea768b0fcba52394a2f"] 48 + ["gpr1330.patch" "md5=f6e2574d7b63d3de281f6c48984e2c71"] 49 + ] 43 50 available: !(os = "macos" & arch = "arm64")
+58
packages/ocaml-base-compiler/ocaml-base-compiler.4.04.0/files/gpr1330.patch
··· 1 + From 978726fd2f3921bcfad9d54d7f8d1e6cb4621699 Mon Sep 17 00:00:00 2001 2 + From: Mark Shinwell <mshinwell@gmail.com> 3 + Date: Wed, 13 Sep 2017 10:23:16 +0100 4 + Subject: [PATCH] AArch64 GOT fixed 5 + 6 + --- 7 + asmcomp/arm64/emit.mlp | 12 ++++++++++-- 8 + asmcomp/arm64/selection.ml | 4 ++-- 9 + 2 files changed, 12 insertions(+), 4 deletions(-) 10 + 11 + diff --git a/asmcomp/arm64/emit.mlp b/asmcomp/arm64/emit.mlp 12 + index f75646e12..5e56600f7 100644 13 + --- a/asmcomp/arm64/emit.mlp 14 + +++ b/asmcomp/arm64/emit.mlp 15 + @@ -323,7 +323,7 @@ let emit_literals() = 16 + (* Emit code to load the address of a symbol *) 17 + 18 + let emit_load_symbol_addr dst s = 19 + - if (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit s then begin 20 + + if not !Clflags.dlcode then begin 21 + ` adrp {emit_reg dst}, {emit_symbol s}\n`; 22 + ` add {emit_reg dst}, {emit_reg dst}, #:lo12:{emit_symbol s}\n` 23 + end else begin 24 + @@ -924,7 +924,15 @@ let fundecl fundecl = 25 + 26 + let emit_item = function 27 + | Cglobal_symbol s -> ` .globl {emit_symbol s}\n`; 28 + - | Cdefine_symbol s -> `{emit_symbol s}:\n` 29 + + | Cdefine_symbol s -> 30 + + if !Clflags.dlcode then begin 31 + + (* GOT relocations against non-global symbols don't seem to work 32 + + properly: GOT entries are not created for the symbols and the 33 + + relocations evaluate to random other GOT entries. For the moment 34 + + force all symbols to be global. *) 35 + + ` .globl {emit_symbol s}\n`; 36 + + end; 37 + + `{emit_symbol s}:\n` 38 + | Cint8 n -> ` .byte {emit_int n}\n` 39 + | Cint16 n -> ` .short {emit_int n}\n` 40 + | Cint32 n -> ` .long {emit_nativeint n}\n` 41 + diff --git a/asmcomp/arm64/selection.ml b/asmcomp/arm64/selection.ml 42 + index d8ea7f83b..b714d0032 100644 43 + --- a/asmcomp/arm64/selection.ml 44 + +++ b/asmcomp/arm64/selection.ml 45 + @@ -82,8 +82,8 @@ let inline_ops = 46 + [ "sqrt"; "caml_bswap16_direct"; "caml_int32_direct_bswap"; 47 + "caml_int64_direct_bswap"; "caml_nativeint_direct_bswap" ] 48 + 49 + -let use_direct_addressing symb = 50 + - (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit symb 51 + +let use_direct_addressing _symb = 52 + + not !Clflags.dlcode 53 + 54 + (* Instruction selection *) 55 + 56 + -- 57 + 2.17.1 58 +
+9 -2
packages/ocaml-base-compiler/ocaml-base-compiler.4.04.0/opam
··· 1 1 opam-version: "2.0" 2 2 synopsis: "Official 4.04.0 release" 3 3 maintainer: "platform@lists.ocaml.org" 4 + authors: ["Xavier Leroy" "Damien Doligez" "Alain Frisch" "Jacques Garrigue" "Didier Rémy" "Jérôme Vouillon"] 5 + homepage: "https://ocaml.org" 6 + bug-reports: "https://github.com/ocaml/ocaml/issues" 7 + dev-repo: "git+https://github.com/ocaml/ocaml.git#4.04" 4 8 depends: [ 5 9 "ocaml" {= "4.04.0" & post} 6 10 "base-unix" {post} ··· 38 42 src: "https://github.com/ocaml/ocaml/archive/4.04.0.tar.gz" 39 43 checksum: "md5=dbf5f869bf0621d2922547b671b36566" 40 44 } 41 - patches: ["fix-gcc10.patch"] 42 - extra-files: [ ["fix-gcc10.patch" "md5=8b0606a5733be21ee8ae2a19ce67059e"] ] 45 + patches: ["fix-gcc10.patch" "gpr1330.patch"] 46 + extra-files: [ 47 + ["fix-gcc10.patch" "md5=8b0606a5733be21ee8ae2a19ce67059e"] 48 + ["gpr1330.patch" "md5=f3c23cc64175211d1b13a71560dc5a97"] 49 + ] 43 50 available: !(os = "macos" & arch = "arm64")
+58
packages/ocaml-base-compiler/ocaml-base-compiler.4.04.1/files/gpr1330.patch
··· 1 + From 978726fd2f3921bcfad9d54d7f8d1e6cb4621699 Mon Sep 17 00:00:00 2001 2 + From: Mark Shinwell <mshinwell@gmail.com> 3 + Date: Wed, 13 Sep 2017 10:23:16 +0100 4 + Subject: [PATCH] AArch64 GOT fixed 5 + 6 + --- 7 + asmcomp/arm64/emit.mlp | 12 ++++++++++-- 8 + asmcomp/arm64/selection.ml | 4 ++-- 9 + 2 files changed, 12 insertions(+), 4 deletions(-) 10 + 11 + diff --git a/asmcomp/arm64/emit.mlp b/asmcomp/arm64/emit.mlp 12 + index f75646e12..5e56600f7 100644 13 + --- a/asmcomp/arm64/emit.mlp 14 + +++ b/asmcomp/arm64/emit.mlp 15 + @@ -323,7 +323,7 @@ let emit_literals() = 16 + (* Emit code to load the address of a symbol *) 17 + 18 + let emit_load_symbol_addr dst s = 19 + - if (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit s then begin 20 + + if not !Clflags.dlcode then begin 21 + ` adrp {emit_reg dst}, {emit_symbol s}\n`; 22 + ` add {emit_reg dst}, {emit_reg dst}, #:lo12:{emit_symbol s}\n` 23 + end else begin 24 + @@ -924,7 +924,15 @@ let fundecl fundecl = 25 + 26 + let emit_item = function 27 + | Cglobal_symbol s -> ` .globl {emit_symbol s}\n`; 28 + - | Cdefine_symbol s -> `{emit_symbol s}:\n` 29 + + | Cdefine_symbol s -> 30 + + if !Clflags.dlcode then begin 31 + + (* GOT relocations against non-global symbols don't seem to work 32 + + properly: GOT entries are not created for the symbols and the 33 + + relocations evaluate to random other GOT entries. For the moment 34 + + force all symbols to be global. *) 35 + + ` .globl {emit_symbol s}\n`; 36 + + end; 37 + + `{emit_symbol s}:\n` 38 + | Cint8 n -> ` .byte {emit_int n}\n` 39 + | Cint16 n -> ` .short {emit_int n}\n` 40 + | Cint32 n -> ` .long {emit_nativeint n}\n` 41 + diff --git a/asmcomp/arm64/selection.ml b/asmcomp/arm64/selection.ml 42 + index d8ea7f83b..b714d0032 100644 43 + --- a/asmcomp/arm64/selection.ml 44 + +++ b/asmcomp/arm64/selection.ml 45 + @@ -82,8 +82,8 @@ let inline_ops = 46 + [ "sqrt"; "caml_bswap16_direct"; "caml_int32_direct_bswap"; 47 + "caml_int64_direct_bswap"; "caml_nativeint_direct_bswap" ] 48 + 49 + -let use_direct_addressing symb = 50 + - (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit symb 51 + +let use_direct_addressing _symb = 52 + + not !Clflags.dlcode 53 + 54 + (* Instruction selection *) 55 + 56 + -- 57 + 2.17.1 58 +
+9 -2
packages/ocaml-base-compiler/ocaml-base-compiler.4.04.1/opam
··· 1 1 opam-version: "2.0" 2 2 synopsis: "Official 4.04.1 release" 3 3 maintainer: "platform@lists.ocaml.org" 4 + authors: ["Xavier Leroy" "Damien Doligez" "Alain Frisch" "Jacques Garrigue" "Didier Rémy" "Jérôme Vouillon"] 5 + homepage: "https://ocaml.org" 6 + bug-reports: "https://github.com/ocaml/ocaml/issues" 7 + dev-repo: "git+https://github.com/ocaml/ocaml.git#4.04" 4 8 depends: [ 5 9 "ocaml" {= "4.04.1" & post} 6 10 "base-unix" {post} ··· 38 42 src: "https://github.com/ocaml/ocaml/archive/4.04.1.tar.gz" 39 43 checksum: "md5=ca6f8d941c4c86c43cccb29ae2a9cd0e" 40 44 } 41 - patches: ["fix-gcc10.patch"] 42 - extra-files: [ ["fix-gcc10.patch" "md5=c59d1ac3de4c892f4aa74d8d1112de00"] ] 45 + patches: ["fix-gcc10.patch" "gpr1330.patch"] 46 + extra-files: [ 47 + ["fix-gcc10.patch" "md5=c59d1ac3de4c892f4aa74d8d1112de00"] 48 + ["gpr1330.patch" "md5=f3c23cc64175211d1b13a71560dc5a97"] 49 + ] 43 50 available: !(os = "macos" & arch = "arm64")
+58
packages/ocaml-base-compiler/ocaml-base-compiler.4.04.2/files/gpr1330.patch
··· 1 + From 978726fd2f3921bcfad9d54d7f8d1e6cb4621699 Mon Sep 17 00:00:00 2001 2 + From: Mark Shinwell <mshinwell@gmail.com> 3 + Date: Wed, 13 Sep 2017 10:23:16 +0100 4 + Subject: [PATCH] AArch64 GOT fixed 5 + 6 + --- 7 + asmcomp/arm64/emit.mlp | 12 ++++++++++-- 8 + asmcomp/arm64/selection.ml | 4 ++-- 9 + 2 files changed, 12 insertions(+), 4 deletions(-) 10 + 11 + diff --git a/asmcomp/arm64/emit.mlp b/asmcomp/arm64/emit.mlp 12 + index f75646e12..5e56600f7 100644 13 + --- a/asmcomp/arm64/emit.mlp 14 + +++ b/asmcomp/arm64/emit.mlp 15 + @@ -323,7 +323,7 @@ let emit_literals() = 16 + (* Emit code to load the address of a symbol *) 17 + 18 + let emit_load_symbol_addr dst s = 19 + - if (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit s then begin 20 + + if not !Clflags.dlcode then begin 21 + ` adrp {emit_reg dst}, {emit_symbol s}\n`; 22 + ` add {emit_reg dst}, {emit_reg dst}, #:lo12:{emit_symbol s}\n` 23 + end else begin 24 + @@ -924,7 +924,15 @@ let fundecl fundecl = 25 + 26 + let emit_item = function 27 + | Cglobal_symbol s -> ` .globl {emit_symbol s}\n`; 28 + - | Cdefine_symbol s -> `{emit_symbol s}:\n` 29 + + | Cdefine_symbol s -> 30 + + if !Clflags.dlcode then begin 31 + + (* GOT relocations against non-global symbols don't seem to work 32 + + properly: GOT entries are not created for the symbols and the 33 + + relocations evaluate to random other GOT entries. For the moment 34 + + force all symbols to be global. *) 35 + + ` .globl {emit_symbol s}\n`; 36 + + end; 37 + + `{emit_symbol s}:\n` 38 + | Cint8 n -> ` .byte {emit_int n}\n` 39 + | Cint16 n -> ` .short {emit_int n}\n` 40 + | Cint32 n -> ` .long {emit_nativeint n}\n` 41 + diff --git a/asmcomp/arm64/selection.ml b/asmcomp/arm64/selection.ml 42 + index d8ea7f83b..b714d0032 100644 43 + --- a/asmcomp/arm64/selection.ml 44 + +++ b/asmcomp/arm64/selection.ml 45 + @@ -82,8 +82,8 @@ let inline_ops = 46 + [ "sqrt"; "caml_bswap16_direct"; "caml_int32_direct_bswap"; 47 + "caml_int64_direct_bswap"; "caml_nativeint_direct_bswap" ] 48 + 49 + -let use_direct_addressing symb = 50 + - (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit symb 51 + +let use_direct_addressing _symb = 52 + + not !Clflags.dlcode 53 + 54 + (* Instruction selection *) 55 + 56 + -- 57 + 2.17.1 58 +
+9 -2
packages/ocaml-base-compiler/ocaml-base-compiler.4.04.2/opam
··· 1 1 opam-version: "2.0" 2 2 synopsis: "Official 4.04.2 release" 3 3 maintainer: "platform@lists.ocaml.org" 4 + authors: ["Xavier Leroy" "Damien Doligez" "Alain Frisch" "Jacques Garrigue" "Didier Rémy" "Jérôme Vouillon"] 5 + homepage: "https://ocaml.org" 6 + bug-reports: "https://github.com/ocaml/ocaml/issues" 7 + dev-repo: "git+https://github.com/ocaml/ocaml.git#4.04" 4 8 depends: [ 5 9 "ocaml" {= "4.04.2" & post} 6 10 "base-unix" {post} ··· 38 42 src: "https://github.com/ocaml/ocaml/archive/4.04.2.tar.gz" 39 43 checksum: "md5=5ce661a2d8b760dc77c2facf46ccddd1" 40 44 } 41 - patches: ["fix-gcc10.patch"] 42 - extra-files: [ ["fix-gcc10.patch" "md5=3ee8aabe0c34cbe746dacc17d8ef9b7e"] ] 45 + patches: ["fix-gcc10.patch" "gpr1330.patch"] 46 + extra-files: [ 47 + ["fix-gcc10.patch" "md5=3ee8aabe0c34cbe746dacc17d8ef9b7e"] 48 + ["gpr1330.patch" "md5=f3c23cc64175211d1b13a71560dc5a97"] 49 + ] 43 50 available: !(os = "macos" & arch = "arm64")
+58
packages/ocaml-base-compiler/ocaml-base-compiler.4.05.0/files/gpr1330.patch
··· 1 + From 978726fd2f3921bcfad9d54d7f8d1e6cb4621699 Mon Sep 17 00:00:00 2001 2 + From: Mark Shinwell <mshinwell@gmail.com> 3 + Date: Wed, 13 Sep 2017 10:23:16 +0100 4 + Subject: [PATCH] AArch64 GOT fixed 5 + 6 + --- 7 + asmcomp/arm64/emit.mlp | 12 ++++++++++-- 8 + asmcomp/arm64/selection.ml | 4 ++-- 9 + 2 files changed, 12 insertions(+), 4 deletions(-) 10 + 11 + diff --git a/asmcomp/arm64/emit.mlp b/asmcomp/arm64/emit.mlp 12 + index f75646e12..5e56600f7 100644 13 + --- a/asmcomp/arm64/emit.mlp 14 + +++ b/asmcomp/arm64/emit.mlp 15 + @@ -323,7 +323,7 @@ let emit_literals() = 16 + (* Emit code to load the address of a symbol *) 17 + 18 + let emit_load_symbol_addr dst s = 19 + - if (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit s then begin 20 + + if not !Clflags.dlcode then begin 21 + ` adrp {emit_reg dst}, {emit_symbol s}\n`; 22 + ` add {emit_reg dst}, {emit_reg dst}, #:lo12:{emit_symbol s}\n` 23 + end else begin 24 + @@ -924,7 +924,15 @@ let fundecl fundecl = 25 + 26 + let emit_item = function 27 + | Cglobal_symbol s -> ` .globl {emit_symbol s}\n`; 28 + - | Cdefine_symbol s -> `{emit_symbol s}:\n` 29 + + | Cdefine_symbol s -> 30 + + if !Clflags.dlcode then begin 31 + + (* GOT relocations against non-global symbols don't seem to work 32 + + properly: GOT entries are not created for the symbols and the 33 + + relocations evaluate to random other GOT entries. For the moment 34 + + force all symbols to be global. *) 35 + + ` .globl {emit_symbol s}\n`; 36 + + end; 37 + + `{emit_symbol s}:\n` 38 + | Cint8 n -> ` .byte {emit_int n}\n` 39 + | Cint16 n -> ` .short {emit_int n}\n` 40 + | Cint32 n -> ` .long {emit_nativeint n}\n` 41 + diff --git a/asmcomp/arm64/selection.ml b/asmcomp/arm64/selection.ml 42 + index d8ea7f83b..b714d0032 100644 43 + --- a/asmcomp/arm64/selection.ml 44 + +++ b/asmcomp/arm64/selection.ml 45 + @@ -82,8 +82,8 @@ let inline_ops = 46 + [ "sqrt"; "caml_bswap16_direct"; "caml_int32_direct_bswap"; 47 + "caml_int64_direct_bswap"; "caml_nativeint_direct_bswap" ] 48 + 49 + -let use_direct_addressing symb = 50 + - (not !Clflags.dlcode) || Compilenv.symbol_in_current_unit symb 51 + +let use_direct_addressing _symb = 52 + + not !Clflags.dlcode 53 + 54 + (* Instruction selection *) 55 + 56 + -- 57 + 2.17.1 58 +
+9 -2
packages/ocaml-base-compiler/ocaml-base-compiler.4.05.0/opam
··· 1 1 opam-version: "2.0" 2 2 synopsis: "Official 4.05.0 release" 3 3 maintainer: "platform@lists.ocaml.org" 4 + authors: ["Xavier Leroy" "Damien Doligez" "Alain Frisch" "Jacques Garrigue" "Didier Rémy" "Jérôme Vouillon"] 5 + homepage: "https://ocaml.org" 6 + bug-reports: "https://github.com/ocaml/ocaml/issues" 7 + dev-repo: "git+https://github.com/ocaml/ocaml.git#4.05" 4 8 depends: [ 5 9 "ocaml" {= "4.05.0" & post} 6 10 "base-unix" {post} ··· 38 42 src: "https://github.com/ocaml/ocaml/archive/4.05.0.tar.gz" 39 43 checksum: "md5=7e0079162134336a24b9028349c756bb" 40 44 } 41 - patches: ["fix-gcc10.patch"] 42 - extra-files: [ ["fix-gcc10.patch" "md5=3791e3c17d11ec0f246fc6c5c5e5e2f3"] ] 45 + patches: ["fix-gcc10.patch" "gpr1330.patch"] 46 + extra-files: [ 47 + ["fix-gcc10.patch" "md5=3791e3c17d11ec0f246fc6c5c5e5e2f3"] 48 + ["gpr1330.patch" "md5=f3c23cc64175211d1b13a71560dc5a97"] 49 + ] 43 50 available: !(os = "macos" & arch = "arm64")