* frysk.debuginfo abi?
@ 2007-05-30 17:32 Stan Cox
0 siblings, 0 replies; only message in thread
From: Stan Cox @ 2007-05-30 17:32 UTC (permalink / raw)
To: Frysk List
This is a brief overview of what is currently in frysk.debuginfo:
The Antlr parser generator is used to generate java classes
corresponding to the grammar defined in frysk-core/frysk/expr/cpp.g.
The generated files are <blddir>/frysk-core/frysk/expr/:
CppLexer.java lexical analyzer
CppParser.java parser
CppTreeParser.java "backend" this is the antlr->frysk interface layer
CppTreeParserTokenTypes.java
CppSymTab.java is an interface that the parser uses to access the
frysk model of the symbol table.
DebugInfoEvaluator.java implements this interface. More about that later.
DebugInfo.java is the interface to expressions from FryskGui or fhpd.
It handles tab completion, what request (type/variable info), and
where request (frame info). It passes the print and assign requests
through to get and put in DebugInfoEvaluator.java. Currently defined
are:
complete - used for tab completion
getSymbolDie - used by list and breakpoint handling to find a function
what - used by 'what' to fetch type information
print - used by 'print' to evaluate an expression
setCurrentFrame/getCurrentFrame/getInnerMostFrame - used by up/down/where
setSubprogram - initializes the current abstract model structures
(Sami is continuing this early abstract model effort.)
DebugInfoEvaluator.java handles anything required of the dwarf symbol
table. More accurately, the parser does this by calling back into
DebugInfoEvaluator. DebugInfoEvaluator handles accessing scalar
variables, arrays, structs, unions, addresses and enumerations.
Currently it calls libdw via the java interface layer in
frysk-imports/lib/dw/DwarfDie.java. There are java versions
of the dwarf encodings in
<blddir>/frysk-imports/lib/dw/Dw*Encodings.java.
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2007-05-30 16:08 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-05-30 17:32 frysk.debuginfo abi? Stan Cox
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).