mirror of
https://github.com/ldc-developers/ldc.git
synced 2025-04-26 21:22:37 +03:00
![]() * WIP: Objective-C support * Further work on implementation * ObjC dynamic cast * Add swift stub class attribute * Classes, protocols and ivars * Fix compilation issues * Fix objc ir codegen * Add objc linker option * Add swift stub classref get ir gen * Minor cleanup * Fix objc link flag being added on non-darwin platforms * Refactor objc gen * remove use of std::nullopt * Emit protocol tables * Remove unused variable * Formatting * Fix build in release mode. Thanks for nothing, c++. * Fix consistency * Fix dynamic casts * Fix tocall parentfd ref and arm msgsend call * Make instance variables work * Implicitly add isa pointer to objc classes. * Fix protocol referencing & allow pragma mangle * Fix protocol linkage * Fix direct call support * always generate var type for methods * Fix test 16096a * Fix extern ivar symbol gen, retain method decls * Remove arm32 and x86 support * Check method and ivar info before pushing to member list * Make ObjcMethod info untyped. * Make ivar and method gen more robust * Generate optional protocol symbols * Use bitcasting instead of creating multiple type defs * Fix invalid protocol list struct gen * More codegen robustness * emit protocol table as const * Make protocol table anon struct * Fix callable type, generate protocol_list_t properly. * Cast vthis to argtype * Handle protorefs and classrefs properly * seperate label ref and deref * Fix method lookup * Enable objective-c tests * Enable objc_call_static test * Scan both classes and protocols for method ref * Enable objective-c tests on arm as well. * supress objc linker warning in tests * Fix class and protocol gen structure * Fix objc_protocol_sections test * ObjcMethod only get callee for functions with bodies * Fix protocol class method gen * Make ObjcMethod anon again * Fix missing emit calls * Fix classref gen * Implement some of the requested changes * Enable compilable tests * Fix property selector gen, ugly hack for final funcs. * Fix segfault in referencing fd->type * Refactor implementation * Fix null references in class and method lookup * include unordered_map * Get functionality on-par with prev impl. * Fix super context calls * Move -L-w flag to d_do_test and use IN_LLVM in objc.d/h * add LDC version tag to -L-w flag * Update CHANGELOG.md |
||
---|---|---|
.. | ||
abi | ||
dcompute | ||
passes | ||
aa.cpp | ||
aa.h | ||
arrays.cpp | ||
arrays.h | ||
asm-gcc.cpp | ||
asm-x86.h | ||
asmstmt.cpp | ||
attributes.cpp | ||
attributes.h | ||
binops.cpp | ||
binops.h | ||
classes.cpp | ||
classes.h | ||
complex.cpp | ||
complex.h | ||
coverage.cpp | ||
coverage.h | ||
cpp-imitating-naming.d | ||
ctfloat.cpp | ||
declarations.cpp | ||
dibuilder.cpp | ||
dibuilder.h | ||
dpragma.d | ||
dvalue.cpp | ||
dvalue.h | ||
dynamiccompile.cpp | ||
dynamiccompile.h | ||
funcgenstate.cpp | ||
funcgenstate.h | ||
function-inlining.cpp | ||
function-inlining.h | ||
functions.cpp | ||
functions.h | ||
inlineir.cpp | ||
inlineir.h | ||
irstate.cpp | ||
irstate.h | ||
ldctraits.cpp | ||
ldctraits.d | ||
ldctraits.h | ||
linkage.cpp | ||
linkage.h | ||
llvm.h | ||
llvmhelpers.cpp | ||
llvmhelpers.d | ||
llvmhelpers.h | ||
logger.cpp | ||
logger.d | ||
logger.h | ||
mangling.cpp | ||
mangling.h | ||
moduleinfo.cpp | ||
moduleinfo.h | ||
modules.cpp | ||
modules.h | ||
ms-cxx-helper.cpp | ||
ms-cxx-helper.h | ||
naked.cpp | ||
nested.cpp | ||
nested.h | ||
objcgen.cpp | ||
objcgen.h | ||
optimizer.cpp | ||
optimizer.h | ||
pgo_ASTbased.cpp | ||
pgo_ASTbased.h | ||
pragma.cpp | ||
pragma.h | ||
recursivevisitor.h | ||
rttibuilder.cpp | ||
rttibuilder.h | ||
runtime.cpp | ||
runtime.h | ||
scope_exit.h | ||
semantic-dcompute.cpp | ||
semantic.d | ||
statements.cpp | ||
structs.cpp | ||
structs.h | ||
target.cpp | ||
to_string.h | ||
tocall.cpp | ||
toconstelem.cpp | ||
toir.cpp | ||
tollvm.cpp | ||
tollvm.h | ||
trycatchfinally.cpp | ||
trycatchfinally.h | ||
typinf.cpp | ||
typinf.h | ||
uda.cpp | ||
uda.h | ||
variable_lifetime.cpp | ||
variable_lifetime.h |