erichkeane wrote:
As background: That chunking behavior was not in the specification document
that I was provided internally when I implemented that. IIRC at the time,
regcall wasn't actually documented externally, so that documentation likely
post-dates when I did my implementation.
https:/
mahesh-attarde wrote:
Thanks aaron for clearing assumptions. Will work on it with separate PR.
https://github.com/llvm/llvm-project/pull/95257
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-c
https://github.com/mahesh-attarde closed
https://github.com/llvm/llvm-project/pull/95257
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
AaronBallman wrote:
> I don't have any context beyond what's written on
> https://reviews.llvm.org/D25204 . And at this point, I'm not sure what
> compiler we're trying to be compatible with. (I added @erichkeane in case he
> remembers.)
The original feature was written for compatibility with
mahesh-attarde wrote:
@erichkeane
Regcall spec has mentioned allocation strategy that is chunk based.
Do you know why currently clang does not do that ? is there different version
of regcall spec it follows?
Also if we add new regcall struct implementation, would that break binaries
across cla
efriedma-quic wrote:
I don't have any context beyond what's written on
https://reviews.llvm.org/D25204 . And at this point, I'm not sure what
compiler we're trying to be compatible with. (I added @erichkeane in case he
remembers.)
https://github.com/llvm/llvm-project/pull/95257
_
efriedma-quic wrote:
Right, the specification requires splitting the whole structure into chunks; if
we add a special-case for 8-byte structs, we'll just have to throw it away when
we implement the right algorithm.
Also, I'm not sure what the isBuiltinType() check is supposed to handle. It
s
mahesh-attarde wrote:
> What you're implementing in this change doesn't seem like it brings us much
> closer to what the document says. I mean, it handles the specific structs in
> your testcase, but the algorithm you're using doesn't generalize.
Can you suggest case which can be useful in ge
efriedma-quic wrote:
What you're implementing in this change doesn't seem like it brings us much
closer to what the document says. I mean, it handles the specific structs in
your testcase, but the algorithm you're using doesn't generalize.
https://github.com/llvm/llvm-project/pull/95257
__
mahesh-attarde wrote:
There are not failures on `buildkite/github-pull-requests/linux-linux-x64.`
something else is off.
https://github.com/llvm/llvm-project/pull/95257
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/c
mahesh-attarde wrote:
Regcall ABI is described on
https://cdrdv2-public.intel.com/679047/Intel-ABI-Vector-Function-v0.9.8.pdf
Page No. 18
>

https://github.com/llvm/llvm-project/pull/95257
_
efriedma-quic wrote:
Do you have a reference for the rules you're implementing?
https://github.com/llvm/llvm-project/pull/95257
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
llvmbot wrote:
@llvm/pr-subscribers-clang
Author: None (mahesh-attarde)
Changes
In Context of __regcall,
Whenever struct can fit in a register we must use single register to pass
whole struct object.
Without this patch, it uses separate registers for each field. With Patch, if
Struct si
https://github.com/mahesh-attarde created
https://github.com/llvm/llvm-project/pull/95257
In Context of __regcall,
Whenever struct can fit in a register we must use single register to pass
whole struct object.
Without this patch, it uses separate registers for each field. With Patch, if
Struc
14 matches
Mail list logo