[all-commits] [llvm/llvm-project] f5fc52: [aarch64] Mix the frame pointer with the stack coo...
Pan Tao via All-commits
all-commits at lists.llvm.org
Wed Jun 10 06:30:02 PDT 2026
Branch: refs/heads/users/luporl/mychange
Home: https://github.com/llvm/llvm-project
Commit: f5fc52130bb86229d82e64aa6df397db9f429fa8
https://github.com/llvm/llvm-project/commit/f5fc52130bb86229d82e64aa6df397db9f429fa8
Author: Pan, Tao <tao.pan at intel.com>
Date: 2026-05-13 (Wed, 13 May 2026)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/StackProtector.cpp
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-stack-protector-windows.ll
M llvm/test/CodeGen/AArch64/arm64ec-indirect-call.ll
M llvm/test/CodeGen/AArch64/mingw-refptr.ll
M llvm/test/CodeGen/AArch64/stack-protector-target.ll
Log Message:
-----------
[aarch64] Mix the frame pointer with the stack cookie when protecting the stack
For MSVC-compatible targets, mix the stack cookie with the current stack
pointer to create a position-dependent guard value. This strengthens
protection against attacks where the attacker knows or can predict the
cookie value, as they would also need to know the exact stack location.
Implementation note: We use SUB (SP - Cookie) instead of XOR like X86
because:
1. SUB maintains the existing AArch64 instruction selection patterns
2. SUB provides equivalent security properties (bijective mixing)
3. The result is still unpredictable without knowing both inputs
The same SUB operation is performed in both prologue (to store the mixed
value) and epilogue (to recompute and verify the mixed value).
This strengthens the guard and matches MSVC.
Fixes #156573.
Commit: 5526a83d3e32e05b5f79430dca94749193fd531b
https://github.com/llvm/llvm-project/commit/5526a83d3e32e05b5f79430dca94749193fd531b
Author: Pan, Tao <tao.pan at intel.com>
Date: 2026-05-13 (Wed, 13 May 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.h
Log Message:
-----------
Fix code format error
Commit: b7cf9dc05c9bf1de3d71e20e52207a7009911b17
https://github.com/llvm/llvm-project/commit/b7cf9dc05c9bf1de3d71e20e52207a7009911b17
Author: Pan, Tao <tao.pan at intel.com>
Date: 2026-05-18 (Mon, 18 May 2026)
Changed paths:
M llvm/test/CodeGen/AArch64/stack-protector-target.ll
Log Message:
-----------
Fix confusing check items
Commit: 55ba9e77c18b14b354743a549966f2723d332132
https://github.com/llvm/llvm-project/commit/55ba9e77c18b14b354743a549966f2723d332132
Author: Pan, Tao <tao.pan at intel.com>
Date: 2026-05-22 (Fri, 22 May 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-stack-protector-windows.ll
M llvm/test/CodeGen/AArch64/arm64ec-indirect-call.ll
M llvm/test/CodeGen/AArch64/mingw-refptr.ll
Log Message:
-----------
Fix the issue of triggering STATUS_STACK_BUFFER_OVERRUN
Commit: 1b7040f3f4adc99fe43dfcfb129ecd1142f2fe6b
https://github.com/llvm/llvm-project/commit/1b7040f3f4adc99fe43dfcfb129ecd1142f2fe6b
Author: Pan, Tao <tao.pan at intel.com>
Date: 2026-05-22 (Fri, 22 May 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Log Message:
-----------
Fix code format error
Commit: df55cfadd227ece3192b9996a5bc4866c3a52c24
https://github.com/llvm/llvm-project/commit/df55cfadd227ece3192b9996a5bc4866c3a52c24
Author: Pan, Tao <tao.pan at intel.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-stack-protector-windows.ll
M llvm/test/CodeGen/AArch64/aarch64-dynamic-stack-layout.ll
M llvm/test/CodeGen/AArch64/alloca.ll
M llvm/test/CodeGen/AArch64/arm64ec-indirect-call.ll
M llvm/test/CodeGen/AArch64/mingw-refptr.ll
M llvm/test/CodeGen/AArch64/shrink-wrapping-vla.ll
M llvm/test/CodeGen/AArch64/sme-agnostic-za.ll
M llvm/test/CodeGen/AArch64/sme-framelower-use-bp.ll
M llvm/test/CodeGen/AArch64/sme-lazy-save-windows.ll
M llvm/test/CodeGen/AArch64/sme-streaming-mode-changing-call-disable-stackslot-scavenging.ll
M llvm/test/CodeGen/AArch64/sme-za-lazy-save-buffer.ll
M llvm/test/CodeGen/AArch64/split-sve-stack-frame-layout.ll
M llvm/test/CodeGen/AArch64/stack-guard-sysreg.ll
M llvm/test/CodeGen/AArch64/stack-hazard.ll
M llvm/test/CodeGen/AArch64/stack-probing-dynamic.ll
M llvm/test/CodeGen/AArch64/stack-protector-target.ll
M llvm/test/CodeGen/AArch64/sve-alloca.ll
M llvm/test/CodeGen/AArch64/sve-stack-frame-layout.ll
M llvm/test/CodeGen/AArch64/win-alloca-no-stack-probe.ll
M llvm/test/CodeGen/AArch64/win-alloca.ll
M llvm/test/CodeGen/AArch64/win-sve.ll
M llvm/test/CodeGen/AArch64/win64_vararg.ll
Log Message:
-----------
Combine 'mov x8, sp' and 'sub x8, x8, x9'
Commit: 31ccc3858ecd989fd190fe2553f9cfdc974d3668
https://github.com/llvm/llvm-project/commit/31ccc3858ecd989fd190fe2553f9cfdc974d3668
Author: Pan, Tao <tao.pan at intel.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Log Message:
-----------
Fix code format error
Commit: 550ddea22d87b14e8b94237444531ffe70e2fe4a
https://github.com/llvm/llvm-project/commit/550ddea22d87b14e8b94237444531ffe70e2fe4a
Author: Pan, Tao <tao.pan at intel.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/test/CodeGen/AArch64/sme-framelower-use-bp.ll
Log Message:
-----------
Remove redundant check
Commit: 4f58edb0060302e62eb7cd81d8958d2204d8a6a5
https://github.com/llvm/llvm-project/commit/4f58edb0060302e62eb7cd81d8958d2204d8a6a5
Author: Pan, Tao <tao.pan at intel.com>
Date: 2026-05-27 (Wed, 27 May 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/test/CodeGen/AArch64/aarch64-dynamic-stack-layout.ll
M llvm/test/CodeGen/AArch64/alloca.ll
M llvm/test/CodeGen/AArch64/arm64ec-indirect-call.ll
M llvm/test/CodeGen/AArch64/mingw-refptr.ll
M llvm/test/CodeGen/AArch64/shrink-wrapping-vla.ll
M llvm/test/CodeGen/AArch64/sme-agnostic-za.ll
M llvm/test/CodeGen/AArch64/sme-framelower-use-bp.ll
M llvm/test/CodeGen/AArch64/sme-lazy-save-windows.ll
M llvm/test/CodeGen/AArch64/sme-streaming-mode-changing-call-disable-stackslot-scavenging.ll
M llvm/test/CodeGen/AArch64/sme-za-lazy-save-buffer.ll
M llvm/test/CodeGen/AArch64/split-sve-stack-frame-layout.ll
M llvm/test/CodeGen/AArch64/stack-guard-sysreg.ll
M llvm/test/CodeGen/AArch64/stack-hazard.ll
M llvm/test/CodeGen/AArch64/stack-probing-dynamic.ll
M llvm/test/CodeGen/AArch64/sve-alloca.ll
M llvm/test/CodeGen/AArch64/sve-stack-frame-layout.ll
M llvm/test/CodeGen/AArch64/win-alloca-no-stack-probe.ll
M llvm/test/CodeGen/AArch64/win-alloca.ll
M llvm/test/CodeGen/AArch64/win-sve.ll
M llvm/test/CodeGen/AArch64/win64_vararg.ll
Log Message:
-----------
Remove redundant modifications
Commit: 9a77889d4c7c85de3153a68d6c38b2c19ee8fb3a
https://github.com/llvm/llvm-project/commit/9a77889d4c7c85de3153a68d6c38b2c19ee8fb3a
Author: Pan, Tao <tao.pan at intel.com>
Date: 2026-05-29 (Fri, 29 May 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-stack-protector-windows.ll
M llvm/test/CodeGen/AArch64/arm64ec-indirect-call.ll
M llvm/test/CodeGen/AArch64/mingw-refptr.ll
M llvm/test/CodeGen/AArch64/stack-protector-target.ll
Log Message:
-----------
Change to using fp to mix cookie
Commit: e22349e610c26a8c1565292f5444ee6d55bc82de
https://github.com/llvm/llvm-project/commit/e22349e610c26a8c1565292f5444ee6d55bc82de
Author: Pan, Tao <tao.pan at intel.com>
Date: 2026-06-02 (Tue, 02 Jun 2026)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/StackProtector.cpp
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-stack-protector-windows.ll
M llvm/test/CodeGen/AArch64/arm64ec-indirect-call.ll
M llvm/test/CodeGen/AArch64/mingw-refptr.ll
M llvm/test/CodeGen/AArch64/stack-protector-target.ll
Log Message:
-----------
Remove uxtx and redundant code
Commit: 84ef93420bf1617dcc1e79baa23bf74bbdbf20f2
https://github.com/llvm/llvm-project/commit/84ef93420bf1617dcc1e79baa23bf74bbdbf20f2
Author: Pan, Tao <tao.pan at intel.com>
Date: 2026-06-02 (Tue, 02 Jun 2026)
Changed paths:
M llvm/test/CodeGen/AArch64/mingw-refptr.ll
Log Message:
-----------
Use update_llc_test_checks.py to update mingw-refptr.ll
Compare: https://github.com/llvm/llvm-project/compare/f5fc52130bb8%5E...84ef93420bf1
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list