OLD | NEW |
1 //===- subzero/src/IceInstMips32.cpp - Mips32 instruction implementation --===// | 1 //===- subzero/src/IceInstMips32.cpp - Mips32 instruction implementation --===// |
2 // | 2 // |
3 // The Subzero Code Generator | 3 // The Subzero Code Generator |
4 // | 4 // |
5 // This file is distributed under the University of Illinois Open Source | 5 // This file is distributed under the University of Illinois Open Source |
6 // License. See LICENSE.TXT for details. | 6 // License. See LICENSE.TXT for details. |
7 // | 7 // |
8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// |
9 // | 9 // |
10 /// \file | 10 /// \file |
(...skipping 912 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
923 Asm->mov_d(getDest(), getSrc(0)); | 923 Asm->mov_d(getDest(), getSrc(0)); |
924 } | 924 } |
925 | 925 |
926 template <> void InstMIPS32Mov_s::emitIAS(const Cfg *Func) const { | 926 template <> void InstMIPS32Mov_s::emitIAS(const Cfg *Func) const { |
927 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); | 927 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); |
928 Asm->mov_s(getDest(), getSrc(0)); | 928 Asm->mov_s(getDest(), getSrc(0)); |
929 } | 929 } |
930 | 930 |
931 template <> void InstMIPS32Movf::emitIAS(const Cfg *Func) const { | 931 template <> void InstMIPS32Movf::emitIAS(const Cfg *Func) const { |
932 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); | 932 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); |
933 Asm->movf(getDest(), getSrc(0), getSrc(1)); | 933 Asm->movf(getDest(), getSrc(1), getSrc(2)); |
934 } | 934 } |
935 | 935 |
936 template <> void InstMIPS32Movn_d::emitIAS(const Cfg *Func) const { | 936 template <> void InstMIPS32Movn_d::emitIAS(const Cfg *Func) const { |
937 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); | 937 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); |
938 Asm->movn_d(getDest(), getSrc(0), getSrc(1)); | 938 Asm->movn_d(getDest(), getSrc(0), getSrc(1)); |
939 } | 939 } |
940 | 940 |
941 template <> void InstMIPS32Movn_s::emitIAS(const Cfg *Func) const { | 941 template <> void InstMIPS32Movn_s::emitIAS(const Cfg *Func) const { |
942 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); | 942 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); |
943 Asm->movn_s(getDest(), getSrc(0), getSrc(1)); | 943 Asm->movn_s(getDest(), getSrc(0), getSrc(1)); |
944 } | 944 } |
945 | 945 |
946 template <> void InstMIPS32Movt::emitIAS(const Cfg *Func) const { | 946 template <> void InstMIPS32Movt::emitIAS(const Cfg *Func) const { |
947 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); | 947 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); |
948 Asm->movt(getDest(), getSrc(0), getSrc(1)); | 948 Asm->movt(getDest(), getSrc(1), getSrc(2)); |
949 } | 949 } |
950 | 950 |
951 template <> void InstMIPS32Movz_d::emitIAS(const Cfg *Func) const { | 951 template <> void InstMIPS32Movz_d::emitIAS(const Cfg *Func) const { |
952 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); | 952 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); |
953 Asm->movz_d(getDest(), getSrc(0), getSrc(1)); | 953 Asm->movz_d(getDest(), getSrc(0), getSrc(1)); |
954 } | 954 } |
955 | 955 |
956 template <> void InstMIPS32Movz_s::emitIAS(const Cfg *Func) const { | 956 template <> void InstMIPS32Movz_s::emitIAS(const Cfg *Func) const { |
957 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); | 957 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); |
958 Asm->movz_s(getDest(), getSrc(0), getSrc(1)); | 958 Asm->movz_s(getDest(), getSrc(0), getSrc(1)); |
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1100 Asm->xor_(getDest(), getSrc(0), getSrc(1)); | 1100 Asm->xor_(getDest(), getSrc(0), getSrc(1)); |
1101 } | 1101 } |
1102 | 1102 |
1103 template <> void InstMIPS32Xori::emitIAS(const Cfg *Func) const { | 1103 template <> void InstMIPS32Xori::emitIAS(const Cfg *Func) const { |
1104 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); | 1104 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); |
1105 Asm->xori(getDest(), getSrc(0), Imm); | 1105 Asm->xori(getDest(), getSrc(0), Imm); |
1106 } | 1106 } |
1107 | 1107 |
1108 } // end of namespace MIPS32 | 1108 } // end of namespace MIPS32 |
1109 } // end of namespace Ice | 1109 } // end of namespace Ice |
OLD | NEW |