[llvm-dev] Android kernel PGO with LLVM

via llvm-dev llvm-dev at lists.llvm.org
Tue Apr 28 21:07:34 PDT 2020


Hi David, 

 

Thank you for replying! I have checked the symbol of libclang_rt.profile-

aarch64-android.a file. This archive library contains InstrProfilingValue.o 

as well as the symbol of '__llvm_profile_instrument_target' that i need(see 

https://pastebin.com/7LqpFtkP ). So I have tried to add this archive 

library as a link-time library when building the Android kernel. But the 

error still remains. I think the Android kernel may not be able to call 

libraries outside the kernel source tree when linking and running. So I'm 

porting pgo-related files (compiler-rt/lib/profile/) from compiler-rt to 

Android kernel source tree. Is this the right and feasible way? 

 

Yi Ma

From: Xinliang David Li <xinliangli at gmail.com> 
Sent: Wednesday, April 29, 2020 1:09 AM
To: Yi Ma <mayi.rjpt at vivo.com>
Cc: llvm-dev <llvm-dev at lists.llvm.org>
Subject: Re: [llvm-dev] Android kernel PGO with LLVM

 

The entry point  is for value profiling and should be defined in InstrProfilingValue.o in the archive library. Can you check the symbol table of the .a file?

 

David

 

On Tue, Apr 28, 2020 at 4:25 AM Yi Ma via llvm-dev <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org> > wrote:

Hello, 

I'm working on Android kernel profile-guided optimization to figure out 
whether pgo can improve the performance of Android kernel. I have tried 
to added '-fprofile-generate' option to build Android kernel(msm-4.19). 
But error occurs during building: "undefined reference to 
'__llvm_profile_instrument_target'". 
I have tried to add libclang_rt.profile-aarch64-android.a as a library 
when building Android kernel, but the error still shows up. I think the 
kernel may not be able to call libraries outside the kernel source tree, 
so I was porting pgo-related files(compiler-rt/lib/profile/) from 
compiler-rt to Android kernel source tree. 

Do you know why did this error occurs? And am I doing the right thing? 
Is it possible to improve the performance of Android kernel with llvm 
pgo mechanism?

Thanks,
Yi Ma

_______________________________________________
LLVM Developers mailing list
llvm-dev at lists.llvm.org <mailto: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/20200429/3dee5435/attachment.html>


More information about the llvm-dev mailing list