HomeFreeBSD

Pull in r371557 from upstream clang trunk (by Richard Smith):

Description

Pull in r371557 from upstream clang trunk (by Richard Smith):

When evaluating a __builtin_constant_p conditional, always enter
constant-folding mode regardless of the original evaluation mode.

In order for this to be correct, we need to track whether we're
checking for a potential constant expression or checking for
undefined behavior separately from the evaluation mode enum, since we
don't want to clobber those states when entering constant-folding
mode.

This should fix "ld: error: undefined symbol: ix86_isa_flags" (and many
other symbol names) during the initial stages of the lang/gcc* ports.

The issue was that without optimization, the __builtin_constant_p()
expressions generated in gencondmd.c would emit references to global
variables that were undefined, such as ix86_isa_flags.

PR: 240629

Details

Provenance
dimAuthored on
Parents
rS352585: kern.elf{32,64}.pie_base sysctl: enforce page alignment.
Branches
Unknown
Tags
Unknown