| 4365 | } |
| 4366 | |
| 4367 | bool WinDebugger::CheckNeedsSRetArgument(DbgType* retType) |
| 4368 | { |
| 4369 | if (!retType->IsCompositeType()) |
| 4370 | return false; |
| 4371 | |
| 4372 | if (retType->GetByteCount() == 0) |
| 4373 | return false; |
| 4374 | |
| 4375 | //TODO: Change when we change the calling convention |
| 4376 | if (retType->GetLanguage() == DbgLanguage_Beef) |
| 4377 | return true; |
| 4378 | |
| 4379 | int retSize = retType->GetByteCount(); |
| 4380 | //TODO: Check for 'POD' type? |
| 4381 | if ((retSize == 1) || (retSize == 2) || (retSize == 4) || (retSize == sizeof(addr_target))) |
| 4382 | return false; |
| 4383 | return true; |
| 4384 | } |
| 4385 | |
| 4386 | DbgTypedValue WinDebugger::ReadReturnValue(CPURegisters* registers, DbgType* type) |
| 4387 | { |
no test coverage detected