#include "compiler/CABI.h" #include "compiler/CMachine.h" #include "compiler/types.h" #include "compiler/CompilerTools.h" static void *trans_vtboffsets; // TODO type static void *cabi_pathroot; // TODO type - 8 byte struct?? static void *cabi_pathcur; // TODO type static TypeClass *cabi_loop_class; static Boolean cabi_loop_construct; short CABI_GetStructResultArgumentIndex(TypeFunc *tfunc) { return 0; } Type *CABI_GetSizeTType(void) { return (Type *) &stunsignedlong; } Type *CABI_GetPtrDiffTType(void) { return (Type *) &stsignedlong; } SInt16 CABI_StructSizeAlignValue(Type *type, SInt32 size) {} void CABI_ReverseBitField(TypeBitfield *tbitfield) {} // not sure about the sig for this, it's unused lmao static void CABI_AllocateZeroVTablePointer() {} static SInt32 CABI_GetBaseSize(TypeClass *tclass) {} static void CABI_AllocateBases() {} static void CABI_AllocateVirtualBasePointers() {} static void CABI_GetMemberOffset() {} static void CABI_AllocateMembers() {} static void CABI_AllocateVirtualBases() {} static void CABI_FindZeroDeltaVPtr() {} static void CABI_FindZeroVirtualBaseMember() {} void CABI_AddVTable(TypeClass *tclass) { tclass->vtable = galloc(sizeof(VTable)); memclrw(tclass->vtable, sizeof(VTable)); } SInt32 CABI_GetVTableOffset(TypeClass *tclass) { return 0; } static void CABI_GetBaseVTableSize() {} static void CABI_ApplyClassFlags() {} static void CABI_AllocateVTable() {} void CABI_LayoutClass(DeclE *decle, TypeClass *tclass) {} void CABI_MakeDefaultArgConstructor(TypeClass *tclass, Object *obj) {} static void CABI_ThisArg() {} ENode *CABI_MakeThisExpr(TypeClass *tclass, SInt32 offset) {} static void CABI_VArg() {} static void CABI_MakeVArgExpr() {} static void CABI_MakeCopyConArgExpr() {} static void CABI_InitVBasePtr1() {} static void CABI_InitVBasePtrs() {} static void CABI_GetVBasePath() {} static void CABI_GetVBasePtr() {} static SInt32 CABI_FindNVBase(TypeClass *tclass, TypeClass *base, SInt32 offset) {} SInt32 CABI_GetCtorOffsetOffset(TypeClass *tclass, TypeClass *base) {} static void CABI_InitVBaseCtorOffsets() {} static void CABI_InitVTablePtrs() {} static Boolean CABI_IsOperatorNew(Object *obj) {} Object *CABI_ConstructorCallsNew(TypeClass *tclass) {} void CABI_TransConstructor(Object *obj, Statement *stmt, TypeClass *tclass, TransConstructorCallback callback, Boolean flag) {} void CABI_MakeDefaultConstructor(TypeClass *tclass, Object *obj) {} static void CABI_AssignObject() {} static void CABI_FindIntegralSizeType() {} static void CABI_AppendCopyRegion() {} static void CABI_ClassInitLoopCallBack() {} static void CABI_CopyConAssignCB() {} void CABI_MakeDefaultCopyConstructor(TypeClass *tclass, Object *obj) {} void CABI_MakeDefaultAssignmentOperator(TypeClass *tclass, Object *obj) {} static void CABI_DestroyMembers() {} static void CABI_DestroyBases() {} static void CABI_DestroyVBases() {} void CABI_TransDestructor(Object *obj1, Object *obj2, Statement *stmt, TypeClass *tclass) {} void CABI_MakeDefaultDestructor(TypeClass *tclass, Object *obj) {} static void CABI_CreateLayeredDestructor() {} void CABI_MakeLayeredDestructor(TypeClass *tclass, Object *obj) {} Object *CABI_GetDestructorObject(Object *obj, int what) { return obj; } static void CABI_AddLayeredDestructor() {} void CABI_AddLayeredDestructors(TypeClass *tclass) {} ENode *CABI_DestroyObject(Object *dtor, ENode *objexpr, UInt8 mode, Boolean flag1, Boolean flag2) {}