[llvm-dev] [proposal] change default ABI for special riscv arch

Ben Shi via llvm-dev llvm-dev at lists.llvm.org
Tue Jun 8 03:19:50 PDT 2021


Thanks,


https://github.com/riscv/riscv-toolchain-conventions/issues/13


Ben Shi

















At 2021-06-08 16:53:29, "Kito Cheng" <kito.cheng at gmail.com> wrote:
>Although GCC didn't implement the implied ABI option,
>but I would suggest you create an issue on
>riscv-toolchain-conventions[1] and/or raise discussion on RISC-V LLVM
>sync up meeting
>
>[1] https://github.com/riscv/riscv-toolchain-conventions
>
>On Tue, Jun 8, 2021 at 4:26 PM Ben Shi via llvm-dev
><llvm-dev at lists.llvm.org> wrote:
>>
>>
>> I also think the logic of fomulating default arch according to -mabi can be improved.
>>
>>   // 3. Choose a default based on `-mabi=`
>>   //
>>   // ilp32e -> rv32e
>>   // ilp32 | ilp32f | ilp32d -> rv32imafdc
>>   // lp64 | lp64f | lp64d -> rv64imafdc
>>
>> it can be
>>   // ilp32e -> rv32e
>>   // ilp32 -> rv32imac
>>   // ilp32f -> rv32imacf
>>   // ilp32d -> rv32 imacfd
>>   // lp64 -> rv64imac
>>   // lp64f -> rv64imacf
>>   // lp64d -> rv64imacfd
>>
>>
>>
>>
>>
>>
>> At 2021-06-08 12:06:15, "Craig Topper" <craig.topper at gmail.com> wrote:
>>
>> That one line change doesn't look like it handles multiletter extension names correctly. For example, Zbf contains "f".
>>
>> ~Craig
>>
>>
>> On Mon, Jun 7, 2021 at 8:13 PM Ben Shi via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>>>
>>> Hello,
>>>
>>> In the clang's riscv driver,
>>> https://github.com/llvm/llvm-project/blob/main/clang/lib/Driver/ToolChains/Arch/RISCV.cpp
>>>
>>> the default abi is fomulated according to arch if no explicit -mabi is specified.
>>>
>>> Is it possible to set the default abi to ilp32f for -march=rv32imacf. For my exployer's chip, HW F is used while SW D is used. Each time I have to write "-march=rv32imacf -mabi=ilp32f“, can it be simplified to only "-march=imacf" ? Just adding a line is enough.
>>>
>>> if (MArch.substr(4).contains_lower("f") && !MArch.substr(4).contains_lower("d"))
>>> return "ilp32f";
>>>
>>> Can I submit a patch to fix it?
>>>
>>> Ben
>>>
>>> _______________________________________________
>>> LLVM Developers mailing list
>>> llvm-dev at lists.llvm.org
>>> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>>
>> _______________________________________________
>> 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/20210608/6b283d98/attachment-0001.html>


More information about the llvm-dev mailing list