Revision tags: llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4 |
|
#
dfe43bd1 |
| 09-Nov-2024 |
Kazu Hirata <kazu@google.com> |
[X86] Remove unused includes (NFC) (#115593)
Identified with misc-include-cleaner.
|
#
c72a751d |
| 01-Nov-2024 |
Phoebe Wang <phoebe.wang@intel.com> |
[X86][AMX] Support AMX-TRANSPOSE (#113532)
Ref.: https://cdrdv2.intel.com/v1/dl/getContent/671368
|
Revision tags: llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8 |
|
#
55bc04f6 |
| 12-Jun-2024 |
aengelke <engelke@in.tum.de> |
[X86] Replace hasVirtualTileReg with AMXProgModel (#95105)
Cleanup after AMXProgModel introduction. AMXProgModel is ManagedRA
whenever virtual tile registers exist at some point.
|
#
9a2c8418 |
| 12-Jun-2024 |
aengelke <engelke@in.tum.de> |
[X86] Early exit MIR AMX passes when AMX is unused (#94989)
Follow-up of #94358. Do the checks even before calling getRegisterInfo
etc., because some of these are virtual function calls.
|
Revision tags: llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, working, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init, llvmorg-14.0.6, llvmorg-14.0.5 |
|
#
aaaf9ced |
| 27-May-2022 |
Luo, Yuanke <yuanke.luo@intel.com> |
[X86][AMX] Replace LDTILECFG with PLDTILECFGV on auto-config.
There is intrinsic `@llvm.x86.ldtilecfg` which is lowered to LDTILECFG. This intrinsic is open for user to configure tile registers by t
[X86][AMX] Replace LDTILECFG with PLDTILECFGV on auto-config.
There is intrinsic `@llvm.x86.ldtilecfg` which is lowered to LDTILECFG. This intrinsic is open for user to configure tile registers by themselves. There is a chance that `@llvm.x86.ldtilecfg` would be mixed with the new AMX intrinsics which depend on compiler to configure tile registers. Separate pusedo instruction PLDTILECFGV would avoid unexpected behavious when `@llvm.x86.ldtilecfg` is mixed with new AMX intrinsics. Though user should not mix the two programming model, compiler should avoid crash or UB when they are mixed.
Differential Revision: https://reviews.llvm.org/D126519
show more ...
|
Revision tags: llvmorg-14.0.4 |
|
#
496156ac |
| 03-May-2022 |
Luo, Yuanke <yuanke.luo@intel.com> |
[X86][AMX] Multiple configure for AMX register.
The previous solution depends on variable name to record the shape information. However it is not reliable, because in release build compiler would no
[X86][AMX] Multiple configure for AMX register.
The previous solution depends on variable name to record the shape information. However it is not reliable, because in release build compiler would not set the variable name. It can be accomplished with an additional option `fno-discard-value-names`, but it is not acceptable for users. This patch is to preconfigure the tile register with machine instruction. It follow the same way what sigle configure does. In the future we can fall back to multiple configure when single configure fails due to the shape dependency issue. The algorithm to configure the tile register is simple in the patch. We may improve it in the future. It configure tile register based on basic block. Compiler would spill the tile register if it live out the basic block. After the configure there should be no spill across tile confgiure in the register alloction. Just like fast register allocation the algorithm walk the instruction in reverse order. When the shape dependency doesn't meet, it insert ldtilecfg after the last instruction that define the shape. In post configuration compiler also walk the basic block to collect the physical tile register number and generate instruction to fill the stack slot for the correponding shape information. TODO: There is some following work in D125602. The risk is modifying the fast RA may cause regression as fast RA is usded for different targets. We may create an independent RA for tile register.
Differential Revision: https://reviews.llvm.org/D125075
show more ...
|
Revision tags: llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1 |
|
#
46776f75 |
| 05-Apr-2022 |
Martin Storsjö <martin@martin.st> |
Fix warnings about variables that are set but only used in debug mode
Add void casts to mark the variables used, next to the places where they are used in assert or `LLVM_DEBUG()` expressions.
Diff
Fix warnings about variables that are set but only used in debug mode
Add void casts to mark the variables used, next to the places where they are used in assert or `LLVM_DEBUG()` expressions.
Differential Revision: https://reviews.llvm.org/D123117
show more ...
|
Revision tags: llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2, llvmorg-14.0.0-rc1, llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2 |
|
#
bfc8f76e |
| 01-Jan-2022 |
Kazu Hirata <kazu@google.com> |
[X86] Remove unused declaration getTileStoreShape (NFC)
|
#
c2bb9637 |
| 11-Dec-2021 |
Kazu Hirata <kazu@google.com> |
Use llvm::any_of and llvm::all_of (NFC)
|
Revision tags: llvmorg-13.0.1-rc1 |
|
#
c4dba471 |
| 17-Nov-2021 |
Luo, Yuanke <yuanke.luo@intel.com> |
[X86][AMX] Don't emit tilerelease for old AMX instrisic.
We should avoid mixing old AMX instrinsic with new AMX intrinsic. For old AMX intrinsic, user is responsible for invoking tile release. This
[X86][AMX] Don't emit tilerelease for old AMX instrisic.
We should avoid mixing old AMX instrinsic with new AMX intrinsic. For old AMX intrinsic, user is responsible for invoking tile release. This patch is to check if there is any tile config generated by compiler. If so it emit tilerelease instruction, otherwise it don't emit the instruction.
Differential Revision: https://reviews.llvm.org/D114066
show more ...
|
Revision tags: llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1, llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2 |
|
#
56d5c46b |
| 11-Jun-2021 |
Bing1 Yu <bing1.yu@intel.com> |
[X86] Support __tile_stream_loadd intrinsic for new AMX interface
Adding support for __tile_stream_loadd intrinsic.
Reviewed By: LuoYuanke
Differential Revision: https://reviews.llvm.org/D103784
|
#
63233da7 |
| 10-Jun-2021 |
Luo, Yuanke <yuanke.luo@intel.com> |
[X86][NFC] Fix typo.
|
Revision tags: llvmorg-12.0.1-rc1 |
|
#
d4bdeca5 |
| 08-May-2021 |
Xiang1 Zhang <xiang1.zhang@intel.com> |
[X86] Support AMX fast register allocation
Differential Revision: https://reviews.llvm.org/D100026
|
#
77e2e5e0 |
| 07-May-2021 |
Xiang1 Zhang <xiang1.zhang@intel.com> |
[X86] Support AMX fast register allocation
|
#
3b8ec86f |
| 07-Apr-2021 |
Xiang1 Zhang <xiang1.zhang@intel.com> |
[X86] Support AMX fast register allocation
Differential Revision: https://reviews.llvm.org/D100026
|