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

v8 vfp assumptions prevent optimal ARMv6 usage

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P3: Somewhat important
    • None
    • 5.0.0
    • None
    • ARMv6 devices like the Raspberry PI
    • cbcc6eb7bf80bc9ad4483996ccd6d719932e0319

    Description

      The following patch:

      https://gitorious.org/qt-platform-mkspecs/qt-platform-mkspecs/blobs/master/5.0/linux-rasp-pi-g++/patches/0001-Disable-v8-ARM-hardfloat-assumption.patch

      is required to get a usable v8 compiled for ARMv6 targets with softfp support. Without this patch, an illegal instruction is generated.

      The relevant section is:

      #if defined(_VFP_FP) && !defined(SOFTFP_)
      answer |= 1u << VFP3 | 1u << ARMv7;
      #endif // defined(_VFP_FP) && !defined(SOFTFP_)

      which appears to assume if we have floating point support and are using softfp (soft calling conventions with hardware instructions being generated) then we are automatically using hardware with VFP3 support, which is sadly not the case.

      We get major gains from enabling softfp on this hardware and commenting out this assumption resolves the crash.

      Attachments

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

        Activity

          People

            girish Girish Ramakrishnan
            dcarr Donald Carr (Nokia) (Inactive)
            Votes:
            7 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes