From d8030b6c75f638b92c1908d8b427299c2d0abe92 Mon Sep 17 00:00:00 2001 From: Rusty Wagner Date: Wed, 16 Dec 2020 21:45:31 -0500 Subject: Add API/UI to control dead store elimination of specific variables --- ui/flowgraphwidget.h | 4 ++++ ui/linearview.h | 4 ++++ 2 files changed, 8 insertions(+) (limited to 'ui') diff --git a/ui/flowgraphwidget.h b/ui/flowgraphwidget.h index fc19c42c..7a2d6add 100644 --- a/ui/flowgraphwidget.h +++ b/ui/flowgraphwidget.h @@ -140,6 +140,8 @@ class BINARYNINJAUIAPI FlowGraphWidget: public QAbstractScrollArea, public View, bool updatePositionForNode(FlowGraphNodeRef oldNode, FlowGraphNodeRef newNode, CursorPosition& pos); void recenterUpdatedGraph(FlowGraphRef oldGraph, int oldXOfs, int oldYOfs); + BNDeadStoreElimination getCurrentVariableDeadStoreElimination(); + protected: virtual void paintEvent(QPaintEvent* event) override; virtual void resizeEvent(QResizeEvent* event) override; @@ -340,4 +342,6 @@ private Q_SLOTS: void editInstruction(); void instrEditDoneEvent(); + + void setCurrentVariableDeadStoreElimination(BNDeadStoreElimination elimination); }; diff --git a/ui/linearview.h b/ui/linearview.h index 3bd446be..7498bdef 100644 --- a/ui/linearview.h +++ b/ui/linearview.h @@ -209,6 +209,8 @@ class BINARYNINJAUIAPI LinearView: public QAbstractScrollArea, public View, publ void getCurrentOffsetByTypeInternal(TypeRef resType, uint64_t baseAddr, uint64_t& begin, uint64_t& end, bool singleLine, std::set& seen); + BNDeadStoreElimination getCurrentVariableDeadStoreElimination(); + private Q_SLOTS: void adjustSize(int width, int height); void viewInHexEditor(); @@ -274,6 +276,8 @@ private Q_SLOTS: void editInstruction(); void instrEditDoneEvent(); + void setCurrentVariableDeadStoreElimination(BNDeadStoreElimination elimination); + Q_SIGNALS: void notifyResizeEvent(int width, int height); -- cgit v1.3.1