[Git][ghc/ghc][wip/ncg-simd] 36 commits: SIMD NCG WIP: fix stack spilling
sheaf (@sheaf)
gitlab at gitlab.haskell.org
Thu Jun 20 08:07:56 UTC 2024
sheaf pushed to branch wip/ncg-simd at Glasgow Haskell Compiler / GHC
Commits:
4e136666 by sheaf at 2024-06-20T10:02:33+02:00
SIMD NCG WIP: fix stack spilling
- - - - -
00963e9c by sheaf at 2024-06-20T10:02:36+02:00
SIMD NCG: accept simd006
- - - - -
ec40fd99 by sheaf at 2024-06-20T10:02:36+02:00
WIP: fix mkSpillInstr/mkLoadInstr panics
- - - - -
82b8ba93 by sheaf at 2024-06-20T10:02:36+02:00
improve RegClass
- - - - -
6c16e39e by sheaf at 2024-06-20T10:02:36+02:00
set up basics for AArch64 SIMD
- - - - -
4e5cc43f by sheaf at 2024-06-20T10:02:36+02:00
use MOVU instructions for spill/unspill
- - - - -
372c958b by sheaf at 2024-06-20T10:02:36+02:00
WIP: start adding vector shuffle primops
- - - - -
88baf78b by sheaf at 2024-06-20T10:02:36+02:00
remove redundant code in CmmToAsm/PPC/Instr
- - - - -
420aa987 by sheaf at 2024-06-20T10:02:36+02:00
emit ymm/zmm when appropriate
- - - - -
5ba5c324 by sheaf at 2024-06-20T10:02:37+02:00
fix reg2reg for vectors
- - - - -
d5784142 by sheaf at 2024-06-20T10:02:37+02:00
WIP: lower vector shuffle instruction on X86
- - - - -
e36db160 by sheaf at 2024-06-20T10:02:37+02:00
NCG SIMD: fix shuffle lowering
- - - - -
1d34282c by sheaf at 2024-06-20T10:02:37+02:00
slight improvement to vector unpack
- - - - -
d5b2d878 by sheaf at 2024-06-20T10:02:37+02:00
fix whitespace
- - - - -
6fca446a by sheaf at 2024-06-20T10:02:37+02:00
fix regUsageOfInstr INSERTPS
- - - - -
0184373c by Jaro Reinders at 2024-06-20T10:02:57+02:00
Add Int64X2 SIMD operations
- - - - -
8077cb22 by sheaf at 2024-06-20T10:03:00+02:00
SIMD: need LLVM for Aarch64/PPC (for now)
- - - - -
4cb02286 by sheaf at 2024-06-20T10:03:00+02:00
fixup Jaro
- - - - -
a5c8ac41 by sheaf at 2024-06-20T10:03:00+02:00
fixup: shuffle base exports
- - - - -
5c0a0e87 by sheaf at 2024-06-20T10:03:00+02:00
improve cgrun083
- - - - -
ac2b9b93 by sheaf at 2024-06-20T10:03:00+02:00
move SIMD tests
- - - - -
cdce59a3 by sheaf at 2024-06-20T10:03:27+02:00
TODO: MOV stuff
- - - - -
2651caa3 by sheaf at 2024-06-20T10:03:31+02:00
X86 NCG SIMD: refactoring
- - - - -
b6a254cf by sheaf at 2024-06-20T10:03:31+02:00
SIMD tests: fixup
- - - - -
63435fa1 by sheaf at 2024-06-20T10:04:44+02:00
fix X86 takeRegRegMove
- - - - -
e5f49360 by sheaf at 2024-06-20T10:04:47+02:00
SIMD: add vector FMA primops
- - - - -
6f6a4bae by sheaf at 2024-06-20T10:05:34+02:00
SIMD: cleanup
- - - - -
5c5cf23e by sheaf at 2024-06-20T10:05:37+02:00
WIP: improve broadcast, especially on LLVM
- - - - -
88df70a6 by sheaf at 2024-06-20T10:05:38+02:00
more tidying
- - - - -
e9c588dd by sheaf at 2024-06-20T10:05:51+02:00
SIMD: refactor Format datatype
- - - - -
650b3531 by sheaf at 2024-06-20T10:05:54+02:00
Revert "SIMD: refactor Format datatype"
This reverts commit 84c46f16be09760b64a8b926f1f92ceb853b2da8.
- - - - -
6bf593c3 by sheaf at 2024-06-20T10:05:54+02:00
SIMD cleanups, remove virtual Float reg
- - - - -
ce7accb8 by sheaf at 2024-06-20T10:05:54+02:00
add simd012 test
- - - - -
f155e901 by sheaf at 2024-06-20T10:05:55+02:00
fix getStackSlotFor FF32
- - - - -
7569cd81 by sheaf at 2024-06-20T10:05:55+02:00
X86 NCG: use FF64 format for Float MOV instructions
- - - - -
00989fd2 by sheaf at 2024-06-20T10:05:55+02:00
don't print type of CmmReg
- - - - -
30 changed files:
- compiler/GHC/Builtin/primops.txt.pp
- compiler/GHC/Cmm/CallConv.hs
- compiler/GHC/Cmm/MachOp.hs
- compiler/GHC/Cmm/Opt.hs
- compiler/GHC/Cmm/Parser.y
- compiler/GHC/Cmm/Reg.hs
- compiler/GHC/CmmToAsm.hs
- compiler/GHC/CmmToAsm/AArch64.hs
- compiler/GHC/CmmToAsm/AArch64/CodeGen.hs
- compiler/GHC/CmmToAsm/AArch64/Instr.hs
- compiler/GHC/CmmToAsm/AArch64/Ppr.hs
- compiler/GHC/CmmToAsm/AArch64/Regs.hs
- compiler/GHC/CmmToAsm/Format.hs
- compiler/GHC/CmmToAsm/Instr.hs
- compiler/GHC/CmmToAsm/PPC.hs
- compiler/GHC/CmmToAsm/PPC/CodeGen.hs
- compiler/GHC/CmmToAsm/PPC/Instr.hs
- compiler/GHC/CmmToAsm/PPC/Ppr.hs
- compiler/GHC/CmmToAsm/PPC/Regs.hs
- compiler/GHC/CmmToAsm/Reg/Graph.hs
- compiler/GHC/CmmToAsm/Reg/Graph/Coalesce.hs
- compiler/GHC/CmmToAsm/Reg/Graph/Spill.hs
- compiler/GHC/CmmToAsm/Reg/Graph/SpillClean.hs
- compiler/GHC/CmmToAsm/Reg/Graph/SpillCost.hs
- compiler/GHC/CmmToAsm/Reg/Graph/Stats.hs
- compiler/GHC/CmmToAsm/Reg/Graph/TrivColorable.hs
- compiler/GHC/CmmToAsm/Reg/Linear.hs
- compiler/GHC/CmmToAsm/Reg/Linear/AArch64.hs
- compiler/GHC/CmmToAsm/Reg/Linear/Base.hs
- compiler/GHC/CmmToAsm/Reg/Linear/JoinToTargets.hs
The diff was not included because it is too large.
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/95d3ef7b4fc000185338aae2757bf8752e3cec92...00989fd206e4ff258992dd5481bc0ede5da876ad
--
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/95d3ef7b4fc000185338aae2757bf8752e3cec92...00989fd206e4ff258992dd5481bc0ede5da876ad
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/20240620/24cb3d33/attachment-0001.html>
More information about the ghc-commits
mailing list