Bug 7412 – ICE(mtype.c) void16 assignment shows interesting errors

Status
RESOLVED
Resolution
INVALID
Severity
normal
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2012-01-31T10:44:00Z
Last change time
2013-10-07T03:50:30Z
Keywords
ice, SIMD
Assigned to
nobody
Creator
turkeyman

Comments

Comment #0 by turkeyman — 2012-01-31T10:44:25Z
This line produces the following error: void16 x = 1.0; $ /opt/gdc/bin/gdc test.d -O2 -S -msse2 Assertion failed: tob->flags & TFLAGSfloating, file ../../gcc/d/dmd2/mtype.c, line 3290 This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information. cc1d.exe: internal compiler error: Aborted Please submit a full bug report, with preprocessed source if appropriate. See <https://bitbucket.org/goshawk/gdc/issues> for instructions. This is possibly not the most informative message :) Also, this line: void16 x = 1; compiles, performs effectively: byte16 = 1; I wonder if you should be able to assign an integer to void16 at all. Assigning the float fails with an interesting message, assigning an integer should probably fail too? I think void16 should only be for blind casting between vector types, or storage of un-typed values.
Comment #1 by bugzilla — 2013-10-06T22:13:10Z
With DMD, the following program: ---- import core.simd; void16 x = 1.0; ---- produces the error message: Error: cannot implicitly convert expression (1.00000) of type double to __vector(void[16]) Which I believe is correct. It's possible this is a gdc only error - refile at https://bitbucket.org/goshawk/gdc/issues ?
Comment #2 by turkeyman — 2013-10-07T03:34:50Z
(In reply to comment #1) > With DMD, the following program: > > ---- > import core.simd; > void16 x = 1.0; > ---- > > produces the error message: > > Error: cannot implicitly convert expression (1.00000) of type double to > __vector(void[16]) > > Which I believe is correct. It's possible this is a gdc only error - refile at > > https://bitbucket.org/goshawk/gdc/issues > > ? Or it could have been fixed in the last almost-2-years :) I'll try it again with GDC.
Comment #3 by ibuclaw — 2013-10-07T03:42:37Z
An ICE in mtype.c -> Front-end issue, not a gdc problem. :o)
Comment #4 by ibuclaw — 2013-10-07T03:50:30Z
Having a quick test with copies that I've still got lingering around. This ICE's with v2.060, but not v2.061 or later. See this commit: https://github.com/D-Programming-Language/dmd/commit/f018414a1b80805d1ac50889907a254653ceabcf#diff-ffafa03255a57832dd09031af6cb915dL3330 Also, please refile gdc bugs at http://bugzilla.gdcproject.org :-)