[llvm-dev] Efficient emulation of arithmetic operations

Alex Susu via llvm-dev llvm-dev at lists.llvm.org
Fri Jul 16 23:48:32 PDT 2021


   Hello.
     I would like to come back to this older thread.

     I would like to advertise a very interesting LLVM related project I worked on in the 
last years.

     It is about the efficient emulation of arithmetic operations by "inlining" the
  emulation routines, which are written manually, by using the LLVM Instruction selection 
pass.
     This is something that is useful as a methodology for other LLVM back ends for 
architectures that require emulation. My PhD thesis at 
https://sites.google.com/site/alexsusu/myfilecabinet/PhDThesis_AlexSusu.pdf describes this 
very interesting method in Section 4.3.7: specifically Algorithm 1 could be used by other 
LLVM developers to implement it for other processor back ends also.

     I would like to add that the work on arithmetic emulation was described also in:
       - a TECS 2020 paper, which can be found at the following address: 
https://dl.acm.org/doi/10.1145/3406536 - see Section 6.2
       - a  WPMVP 2019 paper (satellite of PPoPP) - you can find it here: 
https://dl.acm.org/citation.cfm?id=3306166 .
       - also in some slides available:
 
https://sites.google.com/site/alexsusu/myfilecabinet/CGO2019_LLVM_Performance_Workshop-Arithmetic_emulation_slides.pdf 
.


     Please ask questions and provide feedback if this is of interest to you.


    Thank you,
      Alex



On 3/14/2019 4:49 PM, Alex Susu wrote:
>    Hello.
>      I would like to add that the work on arithmetic emulation was described also in a 
> WPMVP 2019 paper (satellite of PPoPP) - you can find it here: 
> https://dl.acm.org/citation.cfm?id=3306166 . Please ask questions and provide feedback if 
> this is of interest to you.
>      Again, I consider this to be a very interesting contribution for the LLVM back end, 
> theoretical, but also as a proposed methodology in the aforementioned papers .
> 
>    Best regards,
>      Alex
> 
> On 3/2/2019 3:53 PM, Alex Susu wrote:
>>   Hello.
>>     I would like to advertise a very interesting LLVM related project I worked on in the
>> last 1.5 years.
>>
>>     It is about the efficient emulation of arithmetic operations by "inlining" the
>> emulation routines (written manually) by using the LLVM Instruction selection pass.
>>     This is something that is useful as methodology for other LLVM back ends for
>> architectures that require emulation. The technical report at
>> https://sites.google.com/site/alexsusu/myfilecabinet/OpincaaLLVM_TR_UPB.pdf describes this
>> very interesting method in Section 7 - specifically Algorithm 7.1 could be used by other
>> LLVM developers to implement it for other back ends also.
>>     (There are also some slides available describing specifically this work:
>> https://sites.google.com/site/alexsusu/myfilecabinet/CGO2019_LLVM_Performance_Workshop-Arithmetic_emulation_slides.pdf 
>>
>> ) .
>>
>>     Please ask questions and provide feedback if this is of interest to you.
>>
>>   Thank you,
>>     Alex


More information about the llvm-dev mailing list