summaryrefslogtreecommitdiff
path: root/gcc/gimple-collector.hpp
blob: 23b5fe1276fdbf29e686f8dd0c3bc3251adc120e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#pragma once

#include "gimple-walker.hpp"
#include "expr-collector.hpp"

class GimpleTypeCollector : public GimpleWalker
{
private:
  ExprCollector exprCollector;
public:
  GimpleTypeCollector() {};
  ptrset_t get_pointer_set() { return exprCollector.get_pointer_set(); }
private:
  virtual void _walk_pre(const_tree) final;
  virtual void _walk_pre(gassign *s) final;
  virtual void _walk_pre(greturn *s) final;
  virtual void _walk_pre(gcond *s) final;
  virtual void _walk_pre(gcall *s) final;
};