mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2026-09-28 17:11:11 -09:00
Merge remote-tracking branch 'origin/GP-6995_caheckman_SleighChecks'
(Closes #4681, Closes #5176)
This commit is contained in:
@@ -92,7 +92,10 @@ public:
|
|||||||
SleighSymbol *findSymbol(const string &nm) const { return findSymbolInternal(curscope,nm); }
|
SleighSymbol *findSymbol(const string &nm) const { return findSymbolInternal(curscope,nm); }
|
||||||
SleighSymbol *findSymbol(const string &nm,int4 skip) const { return findSymbolInternal(skipScope(skip),nm); }
|
SleighSymbol *findSymbol(const string &nm,int4 skip) const { return findSymbolInternal(skipScope(skip),nm); }
|
||||||
SleighSymbol *findGlobalSymbol(const string &nm) const { return findSymbolInternal(table[0],nm); }
|
SleighSymbol *findGlobalSymbol(const string &nm) const { return findSymbolInternal(table[0],nm); }
|
||||||
SleighSymbol *findSymbol(uintm id) const { return symbollist[id]; }
|
SleighSymbol *findSymbol(uintm id) const {
|
||||||
|
if (id >= symbollist.size())
|
||||||
|
throw SleighError("Bad symbol id");
|
||||||
|
return symbollist[id]; }
|
||||||
void replaceSymbol(SleighSymbol *a,SleighSymbol *b);
|
void replaceSymbol(SleighSymbol *a,SleighSymbol *b);
|
||||||
void encode(Encoder &encoder) const;
|
void encode(Encoder &encoder) const;
|
||||||
void decode(Decoder &decoder,SleighBase *trans);
|
void decode(Decoder &decoder,SleighBase *trans);
|
||||||
|
|||||||
@@ -269,8 +269,10 @@ AddrSpace *AddrSpaceManager::decodeSpace(Decoder &decoder,const Translate *trans
|
|||||||
res.reset(new OtherSpace(this,trans));
|
res.reset(new OtherSpace(this,trans));
|
||||||
else if (elemId == ELEM_SPACE_OVERLAY)
|
else if (elemId == ELEM_SPACE_OVERLAY)
|
||||||
res.reset(new OverlaySpace(this,trans));
|
res.reset(new OverlaySpace(this,trans));
|
||||||
else
|
else if (elemId == ELEM_SPACE)
|
||||||
res.reset(new AddrSpace(this,trans,IPTR_PROCESSOR));
|
res.reset(new AddrSpace(this,trans,IPTR_PROCESSOR));
|
||||||
|
else
|
||||||
|
throw LowlevelError("Invalid address space element");
|
||||||
|
|
||||||
res->decode(decoder);
|
res->decode(decoder);
|
||||||
return res.release();
|
return res.release();
|
||||||
|
|||||||
Reference in New Issue
Block a user