[PATCH] Teach intrinsics to report their required target features
Hal Finkel
hfinkel at anl.gov
Mon Jun 1 05:31:33 PDT 2015
[+Richard, John]
Hi Justin,
I agree that we really should so *something* in this space; cc'ing Richard and John to get some feedback from the Clang folks before we move forward here.
-Hal
----- Original Message -----
> From: "Justin Bogner" <mail at justinbogner.com>
> To: "llvm-commits" <llvm-commits at cs.uiuc.edu>
> Sent: Friday, May 29, 2015 7:15:45 PM
> Subject: [PATCH] Teach intrinsics to report their required target features
>
> This implements a way to look up the required target feature for a
> particular target-specific intrinsic so that frontends can detect and
> report unsupported target intrinsics, rather than emitting them and
> then
> crashing later in SelectionDAG.
>
> I'll follow this up with a change in clang that calls into this when
> lowering intrinsics in CGBuiltin and checks if a required feature is
> available using clang::TargetInfo::hasFeature.
>
> This ends up being a very simple and unobtrusive way to do this, and
> gives nice error messages instead of crashing and burning when
> somebody
> uses (for example) the wrong GCC builtin for their specific target.
>
> The first patch is the tablegen change and the update to the
> intrinsics
> API, the other two are mostly-complete updates to the X86 and ARM
> intrinsics tablegen files to show what this looks like. Assuming
> everyone's happy with the approach, I'll clean those up and audit
> them
> for correctness before they go in.
>
> Okay to go ahead with this?
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
--
Hal Finkel
Assistant Computational Scientist
Leadership Computing Facility
Argonne National Laboratory
More information about the llvm-commits
mailing list