Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-128667

qdrawhelper crash rendering with ARM NEON

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P3: Somewhat important
    • 6.8.0 RC, 6.9.0 FF
    • 6.8.0 Beta4
    • GUI: Painting
    • None
    • Windows 11 24H2 ARM64 with Visual Studio using native ARM toolchain
    • Windows
    • 0819f128c (dev), 998bffecc (6.8)

    Description

      When running an ARM native app using QT, the qdrawhelper.cpp crashes at the following breakpoint. Was previously working in 6.7.2.

      Error message is: Run-Time Check Failure #3 - The variable 'v_top' is being used without being initialized

      And debugging via VS:

      #elif defined(_ARM_NEON_)
              const int16x8_t colorMask = vdupq_n_s16(0x00ff);
              const int16x8_t invColorMask = vmvnq_s16(colorMask);
              const int16x8_t v_256 = vdupq_n_s16(256);
              const int16x8_t v_disty = vdupq_n_s16(disty4);
              const int16x8_t v_disty_ = vshlq_n_s16(v_disty, 4);
              int32x4_t v_fdx = vdupq_n_s32(fdx*4);

              int32x4_t v_fx = vmovq_n_s32(fx);
              v_fx = vsetq_lane_s32(fx + fdx, v_fx, 1);
              v_fx = vsetq_lane_s32(fx + fdx * 2, v_fx, 2);
              v_fx = vsetq_lane_s32(fx + fdx * 3, v_fx, 3);

              const int32x4_t v_ffff_mask = vdupq_n_s32(0x0000ffff);
              const int32x4_t v_fx_r = vdupq_n_s32(0x0800);

              while (b < boundedEnd - 3) {
                  uint32x4x2_t v_top, v_bot;

                  int x1 = (fx >> 16);
                  fx += fdx;
                  v_top = vld2q_lane_u32(s1 + x1, v_top, 0); < this is the break point
                  v_bot = vld2q_lane_u32(s2 + x1, v_bot, 0);

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            allan.jensen Allan Sandfeld Jensen
            lexcyn Devin Arthur
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes