www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 16116] New: Infinite loop on (somewhat complex) simd math


          Issue ID: 16116
           Summary: Infinite loop on (somewhat complex) simd math
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: jbc.engelen gmail.com

DMD 2.071.0 hangs on:
import core.simd;

void foo() {
    ushort8 src;
    ushort8 dest;
    ushort src0;
    dest = ((src * (src0 + 1) + dest * (256 - src0))>>8);

LDC has the same problem so probably a front-end bug.
Note: I think the ">>" is unsupported by DMD for SIMD.

Related report:

Jun 02 2016