Skip to content

AArch64: support closure cfunctions (missing LLVM support for trampolines) #27174

Open
@vchuravy

Description

@vchuravy

The good news is that the AArch64 builds are back, the bad new is that the test are failing.
From https://build.julialang.org/#/builders/86/builds/206/steps/2/logs/stdio

      From worker 7:	LLVM ERROR: Cannot select: 0x3b0167f8: ch = init_trampoline 0x30660570, 0x34ac35e0, 0x3b2fd438, 0x3af9f838, SrcValue:ch<0x3b333810>, SrcValue:ch<0x3b194f08>
      From worker 7:	  0x34ac35e0: i64,ch = CopyFromReg 0x30660570, Register:i64 %0
      From worker 7:	    0x3b2fd980: i64 = Register %0
      From worker 7:	  0x3b2fd438: i64 = AArch64ISD::WrapperLarge TargetGlobalAddress:i64<%jl_value_t addrspace(10)* (%jl_value_t addrspace(10)**, i8*)* @jlcapi_cfunction_38022> 0 [TF=3], TargetGlobalAddress:i64<%jl_value_t addrspace(10)* (%jl_value_t addrspace(10)**, i8*)* @jlcapi_cfunction_38022> 0 [TF=36], TargetGlobalAddress:i64<%jl_value_t addrspace(10)* (%jl_value_t addrspace(10)**, i8*)* @jlcapi_cfunction_38022> 0 [TF=37], TargetGlobalAddress:i64<%jl_value_t addrspace(10)* (%jl_value_t addrspace(10)**, i8*)* @jlcapi_cfunction_38022> 0 [TF=38]
      From worker 7:	    0x3b0187b0: i64 = TargetGlobalAddress<%jl_value_t addrspace(10)* (%jl_value_t addrspace(10)**, i8*)* @jlcapi_cfunction_38022> 0 [TF=3]
      From worker 7:	    0x34b21630: i64 = TargetGlobalAddress<%jl_value_t addrspace(10)* (%jl_value_t addrspace(10)**, i8*)* @jlcapi_cfunction_38022> 0 [TF=36]
      From worker 7:	    0x3b2fd7e0: i64 = TargetGlobalAddress<%jl_value_t addrspace(10)* (%jl_value_t addrspace(10)**, i8*)* @jlcapi_cfunction_38022> 0 [TF=37]
      From worker 7:	    0x3b016e78: i64 = TargetGlobalAddress<%jl_value_t addrspace(10)* (%jl_value_t addrspace(10)**, i8*)* @jlcapi_cfunction_38022> 0 [TF=38]
      From worker 7:	  0x3af9f838: i64,ch = CopyFromReg 0x30660570, Register:i64 %1
      From worker 7:	    0x3b018678: i64 = Register %1
      From worker 7:	In function: jlcapi_cfunction_38022make

@vtjnash is this the issue with trampoline suppport on ARM that you mentioned a while back?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions