Merge pull request #5527 from shawnanastasio/ppc64le

Implement support for powerpc64{,le}
This commit is contained in:
Andrew Kelley
2020-09-10 15:56:27 -04:00
committed by GitHub
10 changed files with 822 additions and 7 deletions

View File

@@ -853,6 +853,9 @@ const char *arch_stack_pointer_register_name(ZigLLVM_ArchType arch) {
case ZigLLVM_riscv32:
case ZigLLVM_riscv64:
case ZigLLVM_mipsel:
case ZigLLVM_ppc:
case ZigLLVM_ppc64:
case ZigLLVM_ppc64le:
return "sp";
case ZigLLVM_wasm32:
@@ -879,7 +882,6 @@ const char *arch_stack_pointer_register_name(ZigLLVM_ArchType arch) {
case ZigLLVM_msp430:
case ZigLLVM_nvptx:
case ZigLLVM_nvptx64:
case ZigLLVM_ppc64le:
case ZigLLVM_r600:
case ZigLLVM_renderscript32:
case ZigLLVM_renderscript64:
@@ -893,8 +895,6 @@ const char *arch_stack_pointer_register_name(ZigLLVM_ArchType arch) {
case ZigLLVM_tce:
case ZigLLVM_tcele:
case ZigLLVM_xcore:
case ZigLLVM_ppc:
case ZigLLVM_ppc64:
case ZigLLVM_ve:
zig_panic("TODO populate this table with stack pointer register name for this CPU architecture");
}
@@ -1325,6 +1325,11 @@ bool target_is_mips(const ZigTarget *target) {
target->arch == ZigLLVM_mips64 || target->arch == ZigLLVM_mips64el;
}
bool target_is_ppc(const ZigTarget *target) {
return target->arch == ZigLLVM_ppc || target->arch == ZigLLVM_ppc64 ||
target->arch == ZigLLVM_ppc64le;
}
unsigned target_fn_align(const ZigTarget *target) {
return 16;
}