• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #include "nv50_ir_lowering_nvc0.h"
2 
3 namespace nv50_ir {
4 
5 class GM107LoweringPass : public NVC0LoweringPass
6 {
7 public:
GM107LoweringPass(Program * p)8    GM107LoweringPass(Program *p) : NVC0LoweringPass(p) {}
9 private:
10    virtual bool visit(Instruction *);
11 
12    virtual bool handleManualTXD(TexInstruction *);
13    bool handleDFDX(Instruction *);
14    bool handlePFETCH(Instruction *);
15    bool handlePOPCNT(Instruction *);
16    bool handleSUQ(TexInstruction *);
17 };
18 
19 class GM107LegalizeSSA : public NVC0LegalizeSSA
20 {
21 private:
22    virtual bool visit(Instruction *);
23 
24 protected:
25    void handlePFETCH(Instruction *);
26    void handleLOAD(Instruction *);
27    void handleQUADON(Instruction *);
28    void handleQUADPOP(Instruction *);
29 };
30 
31 } // namespace nv50_ir
32