summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Sylvain Henry [Thu, 1 Aug 2024 13:59:14 +0000 (15:59 +0200)]
[PATCH] Cmm: don't perform unsound optimizations on 32-bit compiler hosts
-
beef61351b240967b49169d27a9a19565cf3c4af enabled the use of
MO_Add/MO_Sub for 64-bit operations in the C and LLVM backends
-
6755d833af8c21bbad6585144b10e20ac4a0a1ab did the same for the x86 NCG
backend
However we store some literal values as `Int` in the compiler. As a
result, some Cmm optimizations transformed target 64-bit literals into
compiler `Int`. If the compiler is 32-bit, this leads to computing with
wrong literals (see #24893 and #24700).
This patch disables these Cmm optimizations for 32-bit compilers. This
is unsatisfying (optimizations shouldn't be compiler-word-size
dependent) but it fixes the bug and it makes the patch easy to backport.
A proper fix would be much more invasive but it shall be implemented in
the future.
Co-authored-by: amesgen <amesgen@amesgen.de>
Gbp-Pq: Name pr-13096
Ilias Tsitsimpis [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
Add more hadrian bootstrap plans
Hadrian only contains bootstrap plans for previous GHC versions. Add plans for
the current version as well, since we may want to bootstrap hadrian with a
cross-compiled GHC that is of the same version as the GHC we are building here.
Gbp-Pq: Name hadrian-plans
Olivier Benz [Sat, 25 May 2024 10:29:13 +0000 (12:29 +0200)]
[PATCH] Bump max LLVM version to 19 (not inclusive)
Gbp-Pq: Name llvm-newer-version
Debian Haskell Group [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
llvm-new-pass-manager
commit
77db84aba1ba00f6d146e9107b24c6203798e796
Author: Ben Gamari <bgamari.foss@gmail.com>
Date: Wed Jan 31 08:58:58 2024 -0500
llvmGen: Adapt to allow use of new pass manager.
We now must use `-passes` in place of `-O<n>` due to #21936.
Closes #21936.
Gbp-Pq: Name llvm-new-pass-manager
Marios Titas [Sun, 2 Oct 2022 20:12:43 +0000 (23:12 +0300)]
[PATCH] Use capi for syscalls that break under musl's handling of 64-bit time_t
Gbp-Pq: Name time_t-time
Debian Haskell Group [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
hurd-hadrian-supportrpaths
Can be dropped with 9.8.1
Debian-Bug: https://bugs.debian.org/
1056305
Gbp-Pq: Name hurd-hadrian-supportrpaths
Debian Haskell Group [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
hurd-hadrian-osstring
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/11624
Debian-Bug: https://bugs.debian.org/
1056305
Gbp-Pq: Name hurd-hadrian-osstring
Debian Haskell Group [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
hurd-getExecutablePath
Also applies in 9.6.x
Can be dropped with 9.8.1
Debian-Bug: https://bugs.debian.org/
1056305
Gbp-Pq: Name hurd-getExecutablePath
Debian Haskell Group [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
hurd-cabal-supportrpaths
https://github.com/haskell/cabal/pull/9441
Debian-Bug: https://bugs.debian.org/
1056305
Gbp-Pq: Name hurd-cabal-supportrpaths
Debian Haskell Group [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
hurd-cabal-osstring
https://github.com/haskell/cabal/pull/9434
Debian-Bug: https://bugs.debian.org/
1056305
Gbp-Pq: Name hurd-cabal-osstring
Debian Haskell Group [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
sparc64-cabal-support
Debian-Bug: https://bugs.debian.org/
1056033
Gbp-Pq: Name sparc64-cabal-support
Peter Trommler [Tue, 7 Nov 2023 20:47:24 +0000 (21:47 +0100)]
[PATCH] PPC NCG: Generate clear right insn at arch width
The clear right immediate (clrrxi) is only available in word and
doubleword width. Generate clrrxi instructions at architecture
width for all MachOp widths.
Fixes #24145
Gbp-Pq: Name ppc64el-fix-clrri
Debian Haskell Group [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
use-modern-atomics
commit
f8fa1d08d7cbfef508bab355bda80f495e928f98
Author: Ben Gamari <bgamari.foss@gmail.com>
Date: Mon Apr 17 21:04:47 2023 +0000
ghc-prim: Use C11 atomics
Previously `ghc-prim`'s atomic wrappers used the legacy `__sync_*`
family of C builtins. Here we refactor these to rather use the
appropriate C11 atomic equivalents, allowing us to be more explicit
about the expected ordering semantics.
Gbp-Pq: Name use-modern-atomics
Ilias Tsitsimpis [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
Enable GHCi on all platforms in Debian
Bug: https://gitlab.haskell.org/ghc/ghc/-/issues/24098
Gbp-Pq: Name hadrian-enable-interpreter
Debian Haskell Group [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
hadrian-disable-threaded
===================================================================
Gbp-Pq: Name hadrian-disable-threaded
Debian Haskell Group [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
sparc-support
===================================================================
Gbp-Pq: Name sparc-support
Ilias Tsitsimpis [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
Allow setting path for LLC/OPT during configuration
Patch configure.ac to allow us to modify the path for LLC/OPT during
configuration.
Gbp-Pq: Name allow-setting-llvm-program
Ilias Tsitsimpis [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
Fix installation patch for iserv/unlit
Bug: https://gitlab.haskell.org/ghc/ghc/-/issues/22557
Bug: https://gitlab.haskell.org/ghc/ghc/-/issues/22697
Gbp-Pq: Name hadrian-iserv
Ilias Tsitsimpis [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
Use realpath instead of custom script
Use realpath instead of the custom script, which is broken. As an example,
$ ./mk/relpath.sh /usr/lib/ghc/lib /usr/lib/ghc-doc
..-doc
$ realpath --relative-to=/usr/lib/ghc/lib /usr/lib/ghc-doc
../../ghc-doc
Gbp-Pq: Name hadrian-relpath
Ilias Tsitsimpis [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
Pass 'mathjax' to Haddock
Bug: https://gitlab.haskell.org/ghc/ghc/-/issues/23625
Hadrian currently doesn't allow us to modify Haddock options, so
patch Hadrian to manually pass the 'mathjax' option.
Gbp-Pq: Name hadrian-haddock-opts
Debian Haskell Group [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
use-unbundled-sphinx-rtd-theme
===================================================================
Gbp-Pq: Name use-unbundled-sphinx-rtd-theme
Debian Haskell Group [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
Fix LLVM error on armel
GHC 8.10 fails to build on armel with the following error:
LLVM ERROR: unable to allocate function argument #8
PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace.
Stack dump:
0. Program arguments: llc-12 -O2 -enable-tbaa -relocation-model=pic -mcpu=arm7tdmi -mattr=+soft-float,-vfp2,-vfp2sp,-vfp3,-vfp3d16,-vfp3d16sp,-vfp3sp,-fp16,-vfp4,-vfp4d16,-vfp4d16sp,-vfp4sp,-fp-armv8,-fp-armv8d16,-fp-armv8d16sp,-fp-armv8sp,-fullfp16,-fp64,-d32,-neon,-crypto,-dotprod,-fp16fml,-bf16,-mve,-mve.fp,-fpregs,+strict-align /tmp/ghc5537_0/ghc_6.bc -o /tmp/ghc5537_0/ghc_7.lm_s
1. Running pass 'Function Pass Manager' on module '/tmp/ghc20177_0/ghc_6.bc'.
2. Running pass 'ARM Instruction Selection' on function '@"stg_gc_f1$def"'
`llc-12' failed in phase `LLVM Compiler'. (Exit code: -6)
make[3]: *** [rts/ghc.mk:325: rts/dist/build/HeapStackCheck.o] Error 1
Surprisingly, reverting commit
4540bbe2811e860f35de6e67ab2f0040592fd3a5 fixes
thie error.
Author: Ilias Tsitsimpis <iliastsi@debian.org>
Bug: https://gitlab.haskell.org/ghc/ghc/-/issues/20285
Gbp-Pq: Name fix-llvm-armel
Debian Haskell Group [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
Remove hard-coded googleapis font URL
Bug: https://github.com/haskell/haddock/issues/1211
Bug-Debian: https://bugs.debian.org/963690
Gbp-Pq: Name haddock-remove-googleapis-fonts
Debian Haskell Group [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
local-mathjax
===================================================================
Gbp-Pq: Name local-mathjax
Svante Signell [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
Add kfreebsdgnu to GHC_CONVERT_OS in aclocal.m4
Bug-Debian: https://bugs.debian.org/913140
Gbp-Pq: Name kfreebsd-aclocal.m4
Debian Haskell Group [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
Use native x86_64 instructions on x32
This patch enables a few native 64-bit integer instructions
on x32 which are available on this architecture despite using
32-bit pointers. These instructions are present on x86_64 but
not on x86 and ghc checks the size of (void *) to determine
that. This method fails on x32 since despite using 32-bit
pointers and hence sizeof(void *) == 4, it still uses the
full x86_64 instruction set and software-emulated variants
of the aforementioned 64-bit integer instructions are
therefore not present in the toolchain which will make ghc
fail to build on x32.
See: https://ghc.haskell.org/trac/ghc/ticket/11571
Gbp-Pq: Name x32-use-native-x86_64-insn.patch
Debian Haskell Group [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
buildpath-abi-stability
Forwarded to https://ghc.haskell.org/trac/ghc/ticket/10424
Forwarded to https://ghc.haskell.org/trac/ghc/ticket/10424
Gbp-Pq: Name buildpath-abi-stability.patch
Joachim Breitner [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
Do not emit a warning if the .haddock file is missing
As it is quite common on Debian installations to install the -dev package
without the -doc package.
Gbp-Pq: Name no-missing-haddock-file-warning
Jani Monoses [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
Use VFPv3-D16 FPU for ARM builds
Upstream-Bug: https://ghc.haskell.org/trac/ghc/ticket/5914
Jani writes: The D16 part was Debian/Ubuntu specific, IIRC we define hardfloat
in that particular variant (16 double registers) or we had a different naming
for some reason.
Gbp-Pq: Name ARM-VFPv3D16
Gianfranco Costamagna [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
ghc (9.6.6-4) unstable; urgency=medium
[ John Paul Adrian Glaubitz ]
* Add patch to fix FTBFS on alpha (Closes#:
1086830)
[ Gianfranco Costamagna ]
* Add binutils-gold to armel and armhf, according to rules file
(Closes: #
1094995)
[ 王鑫 <wangxin03@loongson.cn> ]
* Update loongarch64 patch with new upstream backported commits
(Closes: #
1089921)
[dgit import unpatched ghc 9.6.6-4]
Gianfranco Costamagna [Mon, 17 Feb 2025 08:44:23 +0000 (09:44 +0100)]
Import ghc_9.6.6-4.debian.tar.xz
[dgit import tarball ghc 9.6.6-4 ghc_9.6.6-4.debian.tar.xz]
Gianfranco Costamagna [Mon, 15 Jul 2024 12:17:29 +0000 (14:17 +0200)]
Import ghc_9.6.6.orig.tar.xz
[dgit import orig ghc_9.6.6.orig.tar.xz]