<div dir="ltr">Patch is up at `[PATCH] Remove `requires` for x86 CPU features`.<div><br></div><div>-- Sean Silva</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jun 23, 2015 at 1:35 PM, Richard Smith <span dir="ltr"><<a href="mailto:richard@metafoo.co.uk" target="_blank">richard@metafoo.co.uk</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><div class="h5">On Mon, Jun 22, 2015 at 6:05 PM, Sean Silva <span dir="ltr"><<a href="mailto:chisophugis@gmail.com" target="_blank">chisophugis@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi All,<div><br></div><div>With the change to use target attributes in the builtin headers, we are now in a weird situation where all of the `requires` inside lib/Headers/module.modulemap are basically useless. They are included regardless of the status of their `requires`. My pending patch <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__reviews.llvm.org_D10423&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=CnzuN65ENJ1H9py9XLiRvC_UQz6u3oG6GUNn7_wosSM&m=K6ISynnjawle2-gGQOdcMl-QKFhJfBfzOZYQuXS-yFo&s=LVuIUi2bGEHZELM-gtlPT7DSFcZfj7-jZwCQWEp0bkY&e=" target="_blank">http://reviews.llvm.org/D10423</a> then causes a build failure because we try to import unavailable modules; without it, we just textually include them which causes the declarations to appear to be owned by different modules than expected.</div><div><br></div><div>Any ideas? It seems like to keep semantic parity with the "all intrinsic headers can be brought in" when textually including, we should remove the `requires`.</div></div></blockquote><div><br></div></div></div><div>We should keep the 'requires x86' on _Builtin_intrinsics.intel, but remove all the subtarget 'requires' declarations from its submodules.</div></div></div></div>
</blockquote></div><br></div>