Skip to content

porting to the s390x/SystemZ architectureΒ #4171

@sharkcz

Description

@sharkcz

Because of the requirement for D language compiler to be available across all platforms Fedora supports, I have started to look into what's missing in the s390x support in LDC. I have a dirty/interim patchset to move forward in the build and here is the summary of the changes I made so far:

  • runtime/druntime/src/rt/sections_elf_shared.d
  • runtime/druntime/src/rt/dwarfeh.d is missing the platform's EH register numbers
  • runtime/druntime/src/core/thread/osthread.d
    • needs an implementation of callWithStackShell()
  • runtime/druntime/src/core/threadasm.S
    • needs implementation of fiber_switchContext
    • can be used to carry the implementation of __ibmz_get_tls_offset() needed by getTLSRange()
  • gen/target.cpp - add mapping of real / long double type to LLVM
    It allows me to build the bootstrap compiler, but later fails due some missing __float128 methods/functions in libldc.a.

update 2022-09-16

  • runtime/druntime/src/core/thread/fiber.d - implement initStack()

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions