Bug 20981 – Runtime segfault for inlined __simd_sto

Status
RESOLVED
Resolution
FIXED
Severity
regression
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
x86_64
OS
Linux
Creation time
2020-06-26T18:01:39Z
Last change time
2020-07-01T10:34:59Z
Keywords
wrong-code
Assigned to
No Owner
Creator
moonlightsentinel

Comments

Comment #0 by moonlightsentinel — 2020-06-26T18:01:39Z
The following code segfaults on linux64 when compiled with -O -inline: import core.simd; // Import need for intrinsics void main() { void16 a; simd_sto!(XMM.STOUPS)(a, a); } void16 simd_sto(XMM opcode)(void16 op1, void16 op2) { return cast(void16) __simd_sto(opcode, op1, op2); }
Comment #1 by moonlightsentinel — 2020-06-26T18:02:06Z
Comment #2 by moonlightsentinel — 2020-06-28T20:59:43Z
Sorry, mistakenly closed this issue
Comment #3 by bugzilla — 2020-06-29T07:32:41Z
Ok, I can duplicate the problem. It's faulting when run - the compiler itself isn't faulting.
Comment #4 by dlang-bot — 2020-07-01T10:34:59Z
dlang/dmd pull request #11347 "fix Issue 20981 - Segfault for inlined __simd_sto" was merged into master: - 097051d0fbe3b5969ef74bac390dec07e6732092 by Walter Bright: fix Issue 20981 - Segfault for inlined __simd_sto https://github.com/dlang/dmd/pull/11347