s-barannikov wrote:

> The call sequence pseudos are generically processed

So are calls, returns, branches etc. That's why we have isCall, isReturn, 
isBranch.

> Calls are quite different and there can be many per target

The fact that we can only have one adjcallstack up/down instruction is a 
limitation. Some targets could have multiple variants of them if allowed. This 
limitation doesn't make them special.

> If you use the correct APIs it wouldn't really matter. Plus we could enforce 
> what is allowed to differ

What else can differ? Certainly not the number of operands and properties like 
isCall. The enforcement could be quite expensive compared to the benefits the 
generalization theoretically gives. And we may end up allowing only the pointer 
operand types to change, which could be implemented much simpler like I 
suggested above.


https://github.com/llvm/llvm-project/pull/159880
_______________________________________________
llvm-branch-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to