Bug 20052 – SIMD 32 bytes causes obscure segfault

Status
RESOLVED
Resolution
FIXED
Severity
critical
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
x86_64
OS
All
Creation time
2019-07-15T01:50:40Z
Last change time
2019-08-01T07:49:47Z
Assigned to
No Owner
Creator
Suleyman Sahmi (سليمان السهمي)

Comments

Comment #0 by sahmi.soulaimane — 2019-07-15T01:50:40Z
The following program crashed inexplicably: ``` struct y { __vector(long[4]) v; } y get() { y t; return t; } void main() { get(); } ``` compiler flags: -mcpu=avx2 Only crashes on Windows 64.
Comment #1 by sahmi.soulaimane — 2019-07-15T03:44:49Z
Sorry, I was mistaken It's a cross platform issue.
Comment #2 by sahmi.soulaimane — 2019-07-15T06:26:39Z
Comment #3 by dlang-bot — 2019-07-15T07:48:20Z
dlang/dmd pull request #10178 "Fix issue 20052 - SIMD 32 bytes segfault" was merged into stable: - 91ebe293cdfb94eeba2fc6b54eab7eed0347058d by سليمان السهمي (Suleyman Sahmi): issue 20052 - tests - 402b042b14c618f4f704e9c39fc2204705f6c9ea by سليمان السهمي (Suleyman Sahmi): fix issue 20052 - must reset the stack before return otherwise the return address is lost https://github.com/dlang/dmd/pull/10178
Comment #4 by dlang-bot — 2019-08-01T07:49:47Z
dlang/dmd pull request #10232 "Merge remote-tracking branch 'upstream/stable' into merge_stable" was merged into master: - b561bf59cad1c829c47e5018a55f49f0dcb095d7 by سليمان السهمي (Suleyman Sahmi): Fix issue 20052 - SIMD 32 bytes segfault (#10178) Fix issue 20052 - SIMD 32 bytes segfault merged-on-behalf-of: Nicholas Wilson <[email protected]> https://github.com/dlang/dmd/pull/10232