[Git][ghc/ghc][wip/marge_bot_batch_merge_job] 14 commits: Parser: Remove unused `apats` rule
Marge Bot (@marge-bot)
gitlab at gitlab.haskell.org
Tue Jun 4 11:09:02 UTC 2024
Marge Bot pushed to branch wip/marge_bot_batch_merge_job at Glasgow Haskell Compiler / GHC
Commits:
18f63970 by Sebastian Graf at 2024-06-04T05:05:27-04:00
Parser: Remove unused `apats` rule
- - - - -
38757c30 by David Knothe at 2024-06-04T05:05:27-04:00
Implement Or Patterns (#22596)
This commit introduces a new language extension, `-XOrPatterns`, as described in
GHC Proposal 522.
An or-pattern `pat1; ...; patk` succeeds iff one of the patterns `pat1`, ...,
`patk` succeed, in this order.
See also the summary `Note [Implmentation of OrPatterns]`.
Co-Authored-By: Sebastian Graf <sgraf1337 at gmail.com>
- - - - -
395412e8 by Cheng Shao at 2024-06-04T05:06:04-04:00
compiler/ghci/rts: remove stdcall support completely
We have formally dropped i386 windows support (#18487) a long time
ago. The stdcall foreign call convention is only used by i386 windows,
and the legacy logic around it is a significant maintenance burden for
future work that adds arm64 windows support (#24603). Therefore, this
patch removes stdcall support completely from the compiler as well as
the RTS (#24883):
- stdcall is still recognized as a FFI calling convention in Haskell
syntax. GHC will now unconditionally emit a warning
(-Wunsupported-calling-conventions) and treat it as ccall.
- Apart from minimum logic to support the parsing and warning logic,
all other code paths related to stdcall has been completely stripped
from the compiler.
- ghci only supports FFI_DEFAULT_ABI and ccall convention from now on.
- FFI foreign export adjustor code on all platforms no longer handles
the stdcall case and only handles ccall from now on.
- The Win32 specific parts of RTS no longer has special code paths for
stdcall.
This commit is the final nail on the coffin for i386 windows support.
Further commits will perform more housecleaning to strip the legacy
code paths and pave way for future arm64 windows support.
- - - - -
d1fe9ab6 by Cheng Shao at 2024-06-04T05:06:04-04:00
rts: remove legacy i386 windows code paths
This commit removes some legacy i386 windows related code paths in the
RTS, given this target is no longer supported.
- - - - -
a605e4b2 by Cheng Shao at 2024-06-04T05:06:04-04:00
autoconf: remove i386 windows related logic
This commit removes legacy i386 windows logic in autoconf scripts.
- - - - -
91e5ac5e by Cheng Shao at 2024-06-04T05:06:04-04:00
llvm-targets: remove i386 windows support
This commit removes i386 windows from llvm-targets and the script to
generate it.
- - - - -
65fe75a4 by Cheng Shao at 2024-06-04T05:06:04-04:00
libraries/utils: remove stdcall related legacy logic
This commit removes stdcall related legacy logic in libraries and
utils. ccall should be used uniformly for all supported windows hosts
from now on.
- - - - -
d2a83302 by Cheng Shao at 2024-06-04T05:06:04-04:00
testsuite: adapt the testsuite for stdcall removal
This patch adjusts test cases to handle the stdcall removal:
- Some stdcall usages are replaced with ccall since stdcall doesn't
make sense anymore.
- We also preserve some stdcall usages, and check in the expected
warning messages to ensure GHC always warn about stdcall usages
(-Wunsupported-calling-conventions) as expected.
- Error code testsuite coverage is slightly improved,
-Wunsupported-calling-conventions is now tested.
- Obsolete code paths related to i386 windows are also removed.
- - - - -
cef8f47a by Cheng Shao at 2024-06-04T05:06:04-04:00
docs: minor adjustments for stdcall removal
This commit include minor adjustments of documentation related to
stdcall removal.
- - - - -
54332437 by Cheng Shao at 2024-06-04T05:06:04-04:00
docs: mention i386 Windows removal in 9.12 changelog
This commit mentions removal of i386 Windows support and stdcall
related change in the 9.12 changelog.
- - - - -
2aaea8a1 by Cheng Shao at 2024-06-04T05:06:40-04:00
hadrian: improve user settings documentation
This patch adds minor improvements to hadrian user settings documentation:
- Add missing `ghc.cpp.opts` case
- Remove non-existent `cxx` case
- Clarify `cc.c.opts` also works for C++, while `cc.deps.opts` doesn't
- Add example of passing configure argument to autoconf packages
- - - - -
07e3ab5a by Alex Mason at 2024-06-04T07:08:53-04:00
Add AArch64 CLZ, CTZ, RBIT primop implementations.
Adds support for emitting the clz and rbit instructions, which are
used by GHC.Prim.clz*#, GHC.Prim.ctz*# and GHC.Prim.bitReverse*#.
- - - - -
580c27a7 by Cheng Shao at 2024-06-04T07:08:54-04:00
hadrian: add +text_simdutf flavour transformer to allow building text with simdutf
This patch adds a +text_simdutf flavour transformer to hadrian to
allow downstream packagers and users that build from source to opt-in
simdutf support for text, in order to benefit from SIMD speedup at
run-time. It's still disabled by default for the time being.
- - - - -
789846b4 by Cheng Shao at 2024-06-04T07:08:54-04:00
ci: enable +text_simdutf flavour transformer for wasm jobs
This commit enables +text_simdutf flavour transformer for wasm jobs,
so text is now built with simdutf support for wasm.
- - - - -
30 changed files:
- .gitlab/generate-ci/gen_ci.hs
- .gitlab/jobs.yaml
- compiler/GHC/Builtin/Names/TH.hs
- compiler/GHC/ByteCode/Asm.hs
- compiler/GHC/Cmm/CLabel.hs
- compiler/GHC/Cmm/Node.hs
- compiler/GHC/Cmm/Parser.y
- compiler/GHC/Cmm/ThreadSanitizer.hs
- compiler/GHC/CmmToAsm/AArch64/CodeGen.hs
- compiler/GHC/CmmToAsm/AArch64/Instr.hs
- compiler/GHC/CmmToAsm/AArch64/Ppr.hs
- compiler/GHC/CmmToAsm/PIC.hs
- compiler/GHC/CmmToAsm/PPC/CodeGen.hs
- compiler/GHC/CmmToAsm/X86/CodeGen.hs
- compiler/GHC/CmmToC.hs
- compiler/GHC/CmmToLlvm/CodeGen.hs
- compiler/GHC/Driver/Flags.hs
- compiler/GHC/Hs/Pat.hs
- compiler/GHC/Hs/Syn/Type.hs
- compiler/GHC/Hs/Utils.hs
- compiler/GHC/HsToCore/Expr.hs
- compiler/GHC/HsToCore/Foreign/C.hs
- compiler/GHC/HsToCore/Foreign/Decl.hs
- compiler/GHC/HsToCore/Foreign/JavaScript.hs
- compiler/GHC/HsToCore/Foreign/Wasm.hs
- compiler/GHC/HsToCore/ListComp.hs
- compiler/GHC/HsToCore/Match.hs
- compiler/GHC/HsToCore/Pmc/Check.hs
- compiler/GHC/HsToCore/Pmc/Desugar.hs
- compiler/GHC/HsToCore/Pmc/Types.hs
The diff was not included because it is too large.
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/28de59e030d258f55f6aa93bae6672605a9df144...789846b41e08c4d65affc9422205c6b38941ffb1
--
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/28de59e030d258f55f6aa93bae6672605a9df144...789846b41e08c4d65affc9422205c6b38941ffb1
You're receiving this email because of your account on gitlab.haskell.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20240604/a45dfde4/attachment.html>
More information about the ghc-commits
mailing list