Skip to content

Commit

Permalink
Add parseAPI/JumpTableFormatPred.h
Browse files Browse the repository at this point in the history
  • Loading branch information
hainest committed Apr 3, 2024
1 parent 88bef43 commit 67c689b
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 2 deletions.
36 changes: 35 additions & 1 deletion docs/parseAPI/developer/JumpTableFormatPred.h.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,39 @@
.. _`sec:JumpTableFormatPred.h`:

JumpTableFormatPred.h
=====================
#####################

.. cpp:namespace:: Dyninst::parseAPI

.. cpp:class:: JumpTableFormatPred : public Slicer::Predicates

.. cpp:function:: JumpTableFormatPred(ParseAPI::Function *f, ParseAPI::Block *b, ReachFact &r, ThunkData &t, SymbolicExpression &sym)

.. cpp:member:: ParseAPI::Function* func
.. cpp:member:: ParseAPI::Block* block
.. cpp:member:: ReachFact& rf
.. cpp:member:: ThunkData& thunks
.. cpp:member:: SymbolicExpression& se
.. cpp:member:: bool jumpTableFormat
.. cpp:member:: bool findIndex
.. cpp:member:: bool findTableBase
.. cpp:member:: AbsRegion index
.. cpp:member:: Assignment::Ptr indexLoc
.. cpp:member:: bool firstMemoryRead
.. cpp:member:: Assignment::Ptr memLoc
.. cpp:member:: AST::Ptr jumpTargetExpr
.. cpp:member:: set<Address> constAddr
.. cpp:member:: dyn_hash_map<Assignment::Ptr, std::pair<AST::Ptr, AST::Ptr>, Assignment::AssignmentPtrHasher> aliases
.. cpp:member:: Address toc_address

On ppc 64, r2 is reserved for storing the address of the global offset table

.. cpp:function:: virtual bool modifyCurrentFrame(Slicer::SliceFrame &frame, Graph::Ptr g, Slicer*)
.. cpp:function:: std::string format()
.. cpp:function:: bool isJumpTableFormat()
.. cpp:function:: bool findRead(Graph::Ptr g, SliceNode::Ptr &)
.. cpp:function:: bool adjustSliceFrame(Slicer::SliceFrame &frame, SliceNode::Ptr, Slicer*)
.. cpp:function:: bool isTOCRead(Slicer::SliceFrame &frame, SliceNode::Ptr)
.. cpp:function:: void FindTOC()
.. cpp:function:: virtual bool ignoreEdge(ParseAPI::Edge *e)
.. cpp:function:: virtual int slicingSizeLimitFactor()
1 change: 0 additions & 1 deletion parseAPI/src/JumpTableFormatPred.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@ class JumpTableFormatPred : public Slicer::Predicates {
set<Address> constAddr;
dyn_hash_map<Assignment::Ptr, std::pair<AST::Ptr, AST::Ptr>, Assignment::AssignmentPtrHasher> aliases;

// On ppc 64, r2 is reserved for storing the address of the global offset table
Address toc_address;

virtual bool modifyCurrentFrame(Slicer::SliceFrame &frame, Graph::Ptr g, Slicer*);
Expand Down

0 comments on commit 67c689b

Please sign in to comment.