[llvm-dev] aarch64 does not emit DW_AT_Location

Adrian Prantl via llvm-dev llvm-dev at lists.llvm.org
Tue Jan 21 12:10:52 PST 2020


If this is unoptimized code this is definitely a bug, with optimizations it may not be possible to do any better. In both cases it's worth filing a bug and attaching a clang reproducer (by running clang through env FORCE_CLANG_DIAGNOSTICS_CRASH=1).

-- adrian

> On Jan 21, 2020, at 3:54 AM, kamlesh kumar via llvm-dev <llvm-dev at lists.llvm.org> wrote:
> 
> 
> Hi Devs,
> debug info emitted by llvm does not contain DW_AT_Location for Formal parameter
> if it is an aggregate like below case
> 1) aggregate contain more than 4 homogeneous and size more than 128 bits
> i.e.
> typedef struct{
> int a,b,c,d,e;
> }mystruct;
> void foo(mystruct ms){
> }
> 
> 2) aggregate contain hetrogeneous type and size more than 128 bits.
> i.e.
> typedef struct{
> int a,b;
> float c,d,e;
> }mystruct;
> void foo(mystruct ms){
> 
> }
> 
> This occur only when aarch64 is used, not with arm and x86.
> like to know community thoughts wether this can be considered as bug or it's an abi restriction.
> 
> 
> ./kamlesh
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200121/85fafb26/attachment.html>


More information about the llvm-dev mailing list