Closed riidefi closed 2 years ago
All tasks have been implemented, whether they work correctly or not is untested currently.
Looks like this task still needs to be done:
At the RecordLayoutBuilder:1061 area, set VPtrOffset to DataSize before you increase the buffer to account for the vtable pointer (in the CodeWarrior case)
VPtrOffset is now being properly set, although codegen seems to be unaltered? I'm continuing investigation, it intrigues me that changes being made aren't having any affect on the output.
Late to this, but all issues presented were fixed months back so I'm closing this issue now.
VPtrOffset
toRecordLayout
, specifically for CodeWarrior (reference the Microsoft-specificVBPtrOffset
field)getVPtrOffset()
getter as well, referencinggetVBPtrOffset()
VPtrOffset
toItaniumRecordLayoutBuilder
VPtrOffset
toDataSize
before you increase the buffer to account for the vtable pointer (in the CodeWarrior case)RecordLayout
C++ constructor to take invptroffset
, and have the non-CodeWarrior calls specifyCharUnits::fromQuantity(-1)
for it. (calls are in RecordLayoutBuilder.cpp:3248 or so)CharUnits PtrWidth = Context.toCharUnitsFromBits(Context.getTargetInfo().getPointerWidth(0));