Merge remote-tracking branch 'origin/GP-4140_ExtractPrimitivesClassCast' into Ghidra_11.0

This commit is contained in:
ghidra1 2023-12-15 15:00:31 -05:00
commit 8bfa9818ef
2 changed files with 5 additions and 0 deletions

View File

@ -579,6 +579,8 @@ uint4 MultiSlotAssign::assignAddress(Datatype *dt,const PrototypePieces &proto,i
return fail;
int4 grp = stackEntry->getGroup();
Address addr = stackEntry->getAddrBySlot(tmpStatus[grp],sizeLeft,1); // Consume all the space we need
if (addr.isInvalid())
return fail;
pieces.push_back(VarnodeData());
pieces.back().space = addr.getSpace();
pieces.back().offset = addr.getOffset();

View File

@ -82,6 +82,9 @@ public interface DatatypeFilter {
*/
public static boolean extractPrimitives(DataType dt, int max, DataType filler,
ArrayList<DataType> res) {
if (dt instanceof TypeDef) {
dt = ((TypeDef) dt).getBaseDataType();
}
int metaType = PcodeDataTypeManager.getMetatype(dt);
switch (metaType) {
case PcodeDataTypeManager.TYPE_UNKNOWN: