[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