Skip to content

Build fails with -march=sandybridge #2231

@UnitedMarsupials

Description

@UnitedMarsupials

Using the stock FreeBSD compiler -- which is clang-19 -- to build OpenEXR 3.4.4 I get:

cc -DLIBDEFLATE_DLL -DOPENEXRCORE_EXPORTS -DOpenEXRCore_EXPORTS -D_FILE_OFFSET_BITS=64 -I/n/home/ports/graphics/openexr/work/.build/src/lib/OpenEXRCore -I/n/home/ports/graphics/openexr/work/openexr-3.4.4/src/lib/OpenEXRCore -I/n/home/ports/graphics/openexr/work/.build/cmake -isystem /usr/local/include -isystem /usr/local/include/Imath -isystem /opt/include -O2 -pipe -march=sandybridge  -fstack-protector-strong -fno-strict-aliasing -O2 -pipe -march=sandybridge  -fstack-protector-strong -fno-strict-aliasing  -DNDEBUG -fPIC -fvisibility=hidden -MD -MT src/lib/OpenEXRCore/CMakeFiles/OpenEXRCore.dir/unpack.c.o -MF src/lib/OpenEXRCore/CMakeFiles/OpenEXRCore.dir/unpack.c.o.d -o src/lib/OpenEXRCore/CMakeFiles/OpenEXRCore.dir/unpack.c.o -c /n/home/ports/graphics/openexr/work/openexr-3.4.4/src/lib/OpenEXRCore/unpack.c
/n/home/ports/graphics/openexr/work/openexr-3.4.4/src/lib/OpenEXRCore/unpack.c:37:18: error: always_inline function '_mm256_cvtph_ps' requires target feature 'f16c', but would be inlined into function 'half_to_float_buffer' that is compiled without support for 'f16c'
   37 |             out, _mm256_cvtph_ps (_mm_loadu_si128 ((const __m128i*) in)));
      |                  ^
/n/home/ports/graphics/openexr/work/openexr-3.4.4/src/lib/OpenEXRCore/unpack.c:47:33: error: always_inline function '_mm_cvtph_ps' requires target feature 'f16c', but would be inlined into function 'half_to_float_buffer' that is compiled without support for 'f16c'
   47 |             _mm_storeu_ps (out, _mm_cvtph_ps (_mm_loadu_si64 (in)));
      |                                 ^
/n/home/ports/graphics/openexr/work/openexr-3.4.4/src/lib/OpenEXRCore/unpack.c:53:33: error: always_inline function '_mm_cvtph_ps' requires target feature 'f16c', but would be inlined into function 'half_to_float_buffer' that is compiled without support for 'f16c'
   53 |             _mm_storeu_ps (out, _mm_cvtph_ps (_mm_loadu_si64 (in)));
      |                                 ^
/n/home/ports/graphics/openexr/work/openexr-3.4.4/src/lib/OpenEXRCore/unpack.c:58:33: error: always_inline function '_mm_cvtph_ps' requires target feature 'f16c', but would be inlined into function 'half_to_float_buffer' that is compiled without support for 'f16c'
   58 |             _mm_storeu_ps (out, _mm_cvtph_ps (_mm_loadu_si64 (in)));
      |                                 ^
/n/home/ports/graphics/openexr/work/openexr-3.4.4/src/lib/OpenEXRCore/unpack.c:61:37: error: always_inline function '_mm_cvtph_ps' requires target feature 'f16c', but would be inlined into function 'half_to_float_buffer' that is compiled without support for 'f16c'
   61 |         case 4: _mm_storeu_ps (out, _mm_cvtph_ps (_mm_loadu_si64 (in))); break;
      |                                     ^
5 errors generated.

I currently have OpenEXR-3.3.2 installed, and do not recall any problems building that a year ago. Please, advise.

Tagging @mandree -- the maintainer of FreeBSD port graphics/openexr.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions