[v2,0/1] Add LoongArch64 support for D frontend

Message ID 20230924214038.30221-1-liushuyu011@gmail.com
Headers
Series Add LoongArch64 support for D frontend |

Message

liushuyu Sept. 24, 2023, 9:40 p.m. UTC
  This patch adds the LoongArch64 support for GCC D frontend.

The runtime support is submitted as a separate patch here:
https://github.com/dlang/dmd/pull/15628.

You can find more information about the LoongArch architecture on this
website:
https://loongson.github.io/LoongArch-Documentation/README-EN.html.

------

Changes since the last revision of the patch:

* Corrected copyright years in loongarch-d.cc and loongarch-d.h.
* Removed changes to the tests, the changes have been rolled into the DMD
  changes in:
  https://github.com/dlang/dmd/pull/15628/commits/eb84b8a2bc86aa751ad6f472422e8abad63ff500
  .
* Removed D_LP32 and D_LP64 bits. Since LoongArch ABIs are somewhat
  complicated, we may introduce the ABI information in the form of target
  traits in the future.

Zixing Liu (1):

 gcc/config.gcc                             |  1 +
 gcc/config/loongarch/loongarch-d.cc        | 77 ++++++++++++++++++++++
 gcc/config/loongarch/loongarch-d.h         | 26 ++++++++
 gcc/config/loongarch/t-loongarch           |  4 ++
 libphobos/configure.tgt                    |  3 +
 libphobos/libdruntime/gcc/sections/elf.d   |  2 +
 libphobos/libdruntime/gcc/unwind/generic.d |  1 +
 7 files changed, 114 insertions(+)
 create mode 100644 gcc/config/loongarch/loongarch-d.cc
 create mode 100644 gcc/config/loongarch/loongarch-d.h
  

Comments

Yang Yujie Sept. 25, 2023, 10:04 a.m. UTC | #1
Hi Zixing,

We are also working on a patch series that could pass the libphobos regression tests.
Will post this later once all failed items are fixed.

Yujie

On Sun, Sep 24, 2023 at 03:40:32PM -0600, Zixing Liu wrote:
> This patch adds the LoongArch64 support for GCC D frontend.
> 
> The runtime support is submitted as a separate patch here:
> https://github.com/dlang/dmd/pull/15628.
> 
> You can find more information about the LoongArch architecture on this
> website:
> https://loongson.github.io/LoongArch-Documentation/README-EN.html.
> 
> ------
> 
> Changes since the last revision of the patch:
> 
> * Corrected copyright years in loongarch-d.cc and loongarch-d.h.
> * Removed changes to the tests, the changes have been rolled into the DMD
>   changes in:
>   https://github.com/dlang/dmd/pull/15628/commits/eb84b8a2bc86aa751ad6f472422e8abad63ff500
>   .
> * Removed D_LP32 and D_LP64 bits. Since LoongArch ABIs are somewhat
>   complicated, we may introduce the ABI information in the form of target
>   traits in the future.
> 
> Zixing Liu (1):
> 
>  gcc/config.gcc                             |  1 +
>  gcc/config/loongarch/loongarch-d.cc        | 77 ++++++++++++++++++++++
>  gcc/config/loongarch/loongarch-d.h         | 26 ++++++++
>  gcc/config/loongarch/t-loongarch           |  4 ++
>  libphobos/configure.tgt                    |  3 +
>  libphobos/libdruntime/gcc/sections/elf.d   |  2 +
>  libphobos/libdruntime/gcc/unwind/generic.d |  1 +
>  7 files changed, 114 insertions(+)
>  create mode 100644 gcc/config/loongarch/loongarch-d.cc
>  create mode 100644 gcc/config/loongarch/loongarch-d.h
> 
> -- 
> 2.42.0
  
liushuyu Sept. 25, 2023, 3:12 p.m. UTC | #2
Hi Yujie,

Sorry, I did not know Loongson Technologies is also working on this.

However, you can jump onto that GitHub pull request to review my changes 
so that they align with your implementation and nobody's effort would go 
to waste.

Thanks,

Zixing

On 2023/9/25 04:04, Yang Yujie wrote:
> Hi Zixing,
>
> We are also working on a patch series that could pass the libphobos regression tests.
> Will post this later once all failed items are fixed.
>
> Yujie
>
> On Sun, Sep 24, 2023 at 03:40:32PM -0600, Zixing Liu wrote:
>> This patch adds the LoongArch64 support for GCC D frontend.
>>
>> The runtime support is submitted as a separate patch here:
>> https://github.com/dlang/dmd/pull/15628.
>>
>> You can find more information about the LoongArch architecture on this
>> website:
>> https://loongson.github.io/LoongArch-Documentation/README-EN.html.
>>
>> ------
>>
>> Changes since the last revision of the patch:
>>
>> * Corrected copyright years in loongarch-d.cc and loongarch-d.h.
>> * Removed changes to the tests, the changes have been rolled into the DMD
>>    changes in:
>>    https://github.com/dlang/dmd/pull/15628/commits/eb84b8a2bc86aa751ad6f472422e8abad63ff500
>>    .
>> * Removed D_LP32 and D_LP64 bits. Since LoongArch ABIs are somewhat
>>    complicated, we may introduce the ABI information in the form of target
>>    traits in the future.
>>
>> Zixing Liu (1):
>>
>>   gcc/config.gcc                             |  1 +
>>   gcc/config/loongarch/loongarch-d.cc        | 77 ++++++++++++++++++++++
>>   gcc/config/loongarch/loongarch-d.h         | 26 ++++++++
>>   gcc/config/loongarch/t-loongarch           |  4 ++
>>   libphobos/configure.tgt                    |  3 +
>>   libphobos/libdruntime/gcc/sections/elf.d   |  2 +
>>   libphobos/libdruntime/gcc/unwind/generic.d |  1 +
>>   7 files changed, 114 insertions(+)
>>   create mode 100644 gcc/config/loongarch/loongarch-d.cc
>>   create mode 100644 gcc/config/loongarch/loongarch-d.h
>>
>> -- 
>> 2.42.0