https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124053

            Bug ID: 124053
           Summary: c2[3y]-imaginary-constants-7.c fails for
                    -march=armv8.1-m.main+mve.fp+fp.dp
           Product: gcc
           Version: 15.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: azoff at gcc dot gnu.org
  Target Milestone: ---

Both test cases fail with -march=armv8.1-m.main+mve.fp+fp.dp,
-march=armv8.1-m.main+mve.fp+fp and -march=armv8.1-m.main+mve.fp.dp (possibly
other permutations too).
The __mulhc3 intrinsic appears to be missing for arm-none-eabi.

$ /build/r16-7367-g7b2e9d01d325f0/bin/arm-none-eabi-gcc
/build/gcc_src/gcc/testsuite/gcc.dg/c23-imaginary-constants-7.c
-march=armv8.1-m.main+mve.fp+fp.dp -mfloat-abi=hard -mfpu=auto
-fdiagnostics-plain-output -std=c23 -pedantic -mfp16-format=ieee
--specs=rdimon.specs -o /dev/null
/build/gcc_src/gcc/testsuite/gcc.dg/c23-imaginary-constants-7.c:7:23: warning:
imaginary constants are a C2Y feature or GCC extension [-Wpedantic]
/build/gcc_src/gcc/testsuite/gcc.dg/c23-imaginary-constants-7.c:8:23: warning:
imaginary constants are a C2Y feature or GCC extension [-Wpedantic]
/build/gcc_src/gcc/testsuite/gcc.dg/c23-imaginary-constants-7.c:9:23: warning:
imaginary constants are a C2Y feature or GCC extension [-Wpedantic]
/build/gcc_src/gcc/testsuite/gcc.dg/c23-imaginary-constants-7.c:10:23: warning:
imaginary constants are a C2Y feature or GCC extension [-Wpedantic]
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
/tmp/cc9FWtDM.o: in function `main':
c23-imaginary-constants-7.c:(.text+0x2c): undefined reference to `__mulhc3'
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
(__mulhc3): Unknown destination type (ARM/Thumb) in /tmp/cc9FWtDM.o
c23-imaginary-constants-7.c:(.text+0x2c): dangerous relocation: unsupported
relocation
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
c23-imaginary-constants-7.c:(.text+0xac): undefined reference to `__mulhc3'
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
(__mulhc3): Unknown destination type (ARM/Thumb) in /tmp/cc9FWtDM.o
c23-imaginary-constants-7.c:(.text+0xac): dangerous relocation: unsupported
relocation
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
c23-imaginary-constants-7.c:(.text+0x12c): undefined reference to `__mulhc3'
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
(__mulhc3): Unknown destination type (ARM/Thumb) in /tmp/cc9FWtDM.o
c23-imaginary-constants-7.c:(.text+0x12c): dangerous relocation: unsupported
relocation
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
c23-imaginary-constants-7.c:(.text+0x1ac): undefined reference to `__mulhc3'
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
(__mulhc3): Unknown destination type (ARM/Thumb) in /tmp/cc9FWtDM.o
c23-imaginary-constants-7.c:(.text+0x1ac): dangerous relocation: unsupported
relocation
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
c23-imaginary-constants-7.c:(.text+0x22c): undefined reference to `__mulhc3'
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
(__mulhc3): Unknown destination type (ARM/Thumb) in /tmp/cc9FWtDM.o
c23-imaginary-constants-7.c:(.text+0x22c): dangerous relocation: unsupported
relocation
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
/tmp/cc9FWtDM.o:c23-imaginary-constants-7.c:(.text+0x2ac): more undefined
references to `__mulhc3' follow
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
(__mulhc3): Unknown destination type (ARM/Thumb) in /tmp/cc9FWtDM.o
/tmp/cc9FWtDM.o: in function `main':
c23-imaginary-constants-7.c:(.text+0x2ac): dangerous relocation: unsupported
relocation
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
(__mulhc3): Unknown destination type (ARM/Thumb) in /tmp/cc9FWtDM.o
c23-imaginary-constants-7.c:(.text+0x32c): dangerous relocation: unsupported
relocation
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
(__mulhc3): Unknown destination type (ARM/Thumb) in /tmp/cc9FWtDM.o
c23-imaginary-constants-7.c:(.text+0x3c8): dangerous relocation: unsupported
relocation
collect2: error: ld returned 1 exit status


$ /build/r16-7367-g7b2e9d01d325f0/bin/arm-none-eabi-gcc
/build/gcc_src/gcc/testsuite/gcc.dg/c2y-imaginary-constants-7.c
-march=armv8.1-m.main+mve.fp -mfloat-abi=hard -mfpu=auto
-fdiagnostics-plain-output -std=c23 -pedantic -mfp16-format=ieee
--specs=rdimon.specs -o /dev/null
In file included from
/build/gcc_src/gcc/testsuite/gcc.dg/c2y-imaginary-constants-7.c:7:
/build/gcc_src/gcc/testsuite/gcc.dg/c23-imaginary-constants-7.c:7:23: warning:
imaginary constants are a C2Y feature or GCC extension [-Wpedantic]
/build/gcc_src/gcc/testsuite/gcc.dg/c23-imaginary-constants-7.c:8:23: warning:
imaginary constants are a C2Y feature or GCC extension [-Wpedantic]
/build/gcc_src/gcc/testsuite/gcc.dg/c23-imaginary-constants-7.c:9:23: warning:
imaginary constants are a C2Y feature or GCC extension [-Wpedantic]
/build/gcc_src/gcc/testsuite/gcc.dg/c23-imaginary-constants-7.c:10:23: warning:
imaginary constants are a C2Y feature or GCC extension [-Wpedantic]
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
/tmp/ccsp9bGl.o: in function `main':
c2y-imaginary-constants-7.c:(.text+0x2c): undefined reference to `__mulhc3'
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
(__mulhc3): Unknown destination type (ARM/Thumb) in /tmp/ccsp9bGl.o
c2y-imaginary-constants-7.c:(.text+0x2c): dangerous relocation: unsupported
relocation
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
c2y-imaginary-constants-7.c:(.text+0xac): undefined reference to `__mulhc3'
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
(__mulhc3): Unknown destination type (ARM/Thumb) in /tmp/ccsp9bGl.o
c2y-imaginary-constants-7.c:(.text+0xac): dangerous relocation: unsupported
relocation
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
c2y-imaginary-constants-7.c:(.text+0x12c): undefined reference to `__mulhc3'
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
(__mulhc3): Unknown destination type (ARM/Thumb) in /tmp/ccsp9bGl.o
c2y-imaginary-constants-7.c:(.text+0x12c): dangerous relocation: unsupported
relocation
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
c2y-imaginary-constants-7.c:(.text+0x1ac): undefined reference to `__mulhc3'
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
(__mulhc3): Unknown destination type (ARM/Thumb) in /tmp/ccsp9bGl.o
c2y-imaginary-constants-7.c:(.text+0x1ac): dangerous relocation: unsupported
relocation
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
c2y-imaginary-constants-7.c:(.text+0x22c): undefined reference to `__mulhc3'
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
(__mulhc3): Unknown destination type (ARM/Thumb) in /tmp/ccsp9bGl.o
c2y-imaginary-constants-7.c:(.text+0x22c): dangerous relocation: unsupported
relocation
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
/tmp/ccsp9bGl.o:c2y-imaginary-constants-7.c:(.text+0x2ac): more undefined
references to `__mulhc3' follow
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
(__mulhc3): Unknown destination type (ARM/Thumb) in /tmp/ccsp9bGl.o
/tmp/ccsp9bGl.o: in function `main':
c2y-imaginary-constants-7.c:(.text+0x2ac): dangerous relocation: unsupported
relocation
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
(__mulhc3): Unknown destination type (ARM/Thumb) in /tmp/ccsp9bGl.o
c2y-imaginary-constants-7.c:(.text+0x32c): dangerous relocation: unsupported
relocation
/build/r16-7367-g7b2e9d01d325f0/bin/../lib/gcc/arm-none-eabi/16.0.1/../../../../arm-none-eabi/bin/ld:
(__mulhc3): Unknown destination type (ARM/Thumb) in /tmp/ccsp9bGl.o
c2y-imaginary-constants-7.c:(.text+0x3c8): dangerous relocation: unsupported
relocation
collect2: error: ld returned 1 exit status

Reply via email to