mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2025-10-06 03:50:02 +02:00
GP-1633/GP-2308 Added ProgramArchitecture to datatype managers.
Refactored ProjectDataTypeManager to extend StandaloneDataTypeManager. Added actions to datatype tree to allow setting archive architecture. Added use of storage translators when switching architectures. Allow FunctionDefinition to accept arbitrary calling convention names and many other misc changes.
This commit is contained in:
parent
75a185aa9e
commit
a4776892bd
248 changed files with 6282 additions and 2935 deletions
|
@ -264,9 +264,9 @@ class SymPcodeExecutor extends PcodeExecutor<Sym> {
|
|||
// TODO: Does the decompiler communicate the inferred calling convention?
|
||||
try {
|
||||
PrototypeModel convention = program.getCompilerSpec().findBestCallingConvention(params);
|
||||
sig.setGenericCallingConvention(convention.getGenericCallingConvention());
|
||||
sig.setCallingConvention(convention.getName());
|
||||
}
|
||||
catch (SleighException e) {
|
||||
catch (SleighException | InvalidInputException e) {
|
||||
// Whatever, just leave sig at "unknown"
|
||||
}
|
||||
return sig;
|
||||
|
@ -352,7 +352,7 @@ class SymPcodeExecutor extends PcodeExecutor<Sym> {
|
|||
throw new PcodeExecutionException("Cannot get stack change for indirect call: " + op);
|
||||
}
|
||||
PrototypeModel convention =
|
||||
program.getCompilerSpec().matchConvention(sig.getGenericCallingConvention());
|
||||
program.getCompilerSpec().matchConvention(sig.getCallingConventionName());
|
||||
if (convention == null) {
|
||||
warnings.add(new UnspecifiedConventionStackUnwindWarning(null));
|
||||
convention = program.getCompilerSpec().getDefaultCallingConvention();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue