aaron.ballman added a comment.

In D122673#3443518 <https://reviews.llvm.org/D122673#3443518>, @samitolvanen 
wrote:

> In D122673#3443498 <https://reviews.llvm.org/D122673#3443498>, @aaron.ballman 
> wrote:
>
>> I tend to be very wary of modifying the type system with attributes -- 
>> questions always arise of what the type system effects are of the attribute. 
>> e.g., does it impact overload sets or template specialization? Name 
>> mangling? If it doesn't have type system impacts... why does it need to be 
>> in the type system at all? This also matters because adding more bits to 
>> types can have unintended side effects like accidentally reducing the depth 
>> of template instantiations we can process (because of the extra memory 
>> pressure). So while I'm not certain what you and @pcc  talked about, it does 
>> seem like an approach at least worth thinking about, especially because this 
>> patch needs to bump the size of `Type`.
>
> Sure, I agree. I'll take a look at the built-in approach. Do you have any 
> thoughts about reusing `nocf_check`, which is essentially identical to this 
> proposed attribute, just currently limited to x86 CET?

I was thinking about that, but I don't think it's possible to reuse that 
(however, I must admit that I don't know the semantic details about either of 
these attributes very well, so I may be missing something). `nocf_check` is 
allowed on any X86 target, and `kcfi_unchecked` is allowed on x86-64. It seems 
like that target would still need a way to differentiate between the semantics 
because the attributes do different things. Or have I misunderstood something 
about the relationship between `nocf_check` and this attribute? (If the 
semantics aren't just "essentially identical" but are "actually identical" for 
x86-64, then this option seems more viable.)


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D122673/new/

https://reviews.llvm.org/D122673

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to