ldc
ldc copied to clipboard
Upgrade frontend & libs to pre-DMD-monorepo state
Apologies for the merge conflict, I've got a couple of changes I need to make to druntime, namely making the intrinsic names for pointers not include the type for LLVM 15 (well technically opaque pointers, which in theory we could enable for LLVM14 or disable for 15) e.g.
-pragma(LDC_intrinsic, "llvm.memcpy.p0i8.p0i8.i#")
+pragma(LDC_intrinsic, LLVM_version >= 1500 ? "llvm.memcpy.p0.p0.i#" : "llvm.memcpy.p0i8.p0i8.i#")
void llvm_memcpy(T)(void* dst, const(void)* src, T len, bool volatile_ = false)
if (__traits(isIntegral, T));
ditto for memmove, memset prefetch and frameaddress.
The undefined _d_arrayctor symbol for the druntime unittest runners is caused by https://issues.dlang.org/show_bug.cgi?id=23337 and needs a frontend fix...