[Bug 267401] clang; i386 ; generates code for target that doesn't support it (CET instructions)

From: <bugzilla-noreply_at_freebsd.org>
Date: Fri, 28 Oct 2022 11:22:23 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=267401

            Bug ID: 267401
           Summary: clang; i386 ; generates code for target that doesn't
                    support it (CET instructions)
           Product: Base System
           Version: Unspecified
          Hardware: i386
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: bin
          Assignee: bugs@FreeBSD.org
          Reporter: martin@bxlr.sk

CPU target: i586, clang generates code that is not supported by target causing
program to crash due to illegal instruction.
Illegal instruction is: endbr32

Tested on physical box running i386 FreeBSD 13.1.

CPU: Pentium/P55C (233.87-MHz 586-class CPU)
  Origin="GenuineIntel"  Id=0x543  Family=0x5  Model=0x4  Stepping=3
  Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX>

Simple "hello world" c code compiled with CFLAGS=-g -march=i586
-fcf-protection.

As target doesn't support flow control -fcf-protection should not be used.
Similar bug to gcc one specified here:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98667

-- 
You are receiving this mail because:
You are the assignee for the bug.