Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(147)

Side by Side Diff: src/IceInstMIPS32.cpp

Issue 2394773004: Subzero, MIPS32: Fix conditional mov instructions (Closed)
Patch Set: Fix typo in test file Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 953 matching lines...) Expand 10 before | Expand all | Expand 10 after
964 Asm->mov_d(getDest(), getSrc(0)); 964 Asm->mov_d(getDest(), getSrc(0));
965 } 965 }
966 966
967 template <> void InstMIPS32Mov_s::emitIAS(const Cfg *Func) const { 967 template <> void InstMIPS32Mov_s::emitIAS(const Cfg *Func) const {
968 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); 968 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>();
969 Asm->mov_s(getDest(), getSrc(0)); 969 Asm->mov_s(getDest(), getSrc(0));
970 } 970 }
971 971
972 template <> void InstMIPS32Movf::emitIAS(const Cfg *Func) const { 972 template <> void InstMIPS32Movf::emitIAS(const Cfg *Func) const {
973 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); 973 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>();
974 Asm->movf(getDest(), getSrc(1), getSrc(2)); 974 Asm->movf(getDest(), getSrc(0), getSrc(1));
975 } 975 }
976 976
977 template <> void InstMIPS32Movn::emitIAS(const Cfg *Func) const { 977 template <> void InstMIPS32Movn::emitIAS(const Cfg *Func) const {
978 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); 978 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>();
979 Asm->movn(getDest(), getSrc(0), getSrc(1)); 979 Asm->movn(getDest(), getSrc(0), getSrc(1));
980 } 980 }
981 981
982 template <> void InstMIPS32Movn_d::emitIAS(const Cfg *Func) const { 982 template <> void InstMIPS32Movn_d::emitIAS(const Cfg *Func) const {
983 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); 983 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>();
984 Asm->movn_d(getDest(), getSrc(0), getSrc(1)); 984 Asm->movn_d(getDest(), getSrc(0), getSrc(1));
985 } 985 }
986 986
987 template <> void InstMIPS32Movn_s::emitIAS(const Cfg *Func) const { 987 template <> void InstMIPS32Movn_s::emitIAS(const Cfg *Func) const {
988 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); 988 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>();
989 Asm->movn_s(getDest(), getSrc(0), getSrc(1)); 989 Asm->movn_s(getDest(), getSrc(0), getSrc(1));
990 } 990 }
991 991
992 template <> void InstMIPS32Movt::emitIAS(const Cfg *Func) const { 992 template <> void InstMIPS32Movt::emitIAS(const Cfg *Func) const {
993 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); 993 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>();
994 Asm->movt(getDest(), getSrc(1), getSrc(2)); 994 Asm->movt(getDest(), getSrc(0), getSrc(1));
995 } 995 }
996 996
997 template <> void InstMIPS32Movz::emitIAS(const Cfg *Func) const { 997 template <> void InstMIPS32Movz::emitIAS(const Cfg *Func) const {
998 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); 998 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>();
999 Asm->movz(getDest(), getSrc(0), getSrc(1)); 999 Asm->movz(getDest(), getSrc(0), getSrc(1));
1000 } 1000 }
1001 1001
1002 template <> void InstMIPS32Movz_d::emitIAS(const Cfg *Func) const { 1002 template <> void InstMIPS32Movz_d::emitIAS(const Cfg *Func) const {
1003 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); 1003 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>();
1004 Asm->movz_d(getDest(), getSrc(0), getSrc(1)); 1004 Asm->movz_d(getDest(), getSrc(0), getSrc(1));
(...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after
1207 Asm->xor_(getDest(), getSrc(0), getSrc(1)); 1207 Asm->xor_(getDest(), getSrc(0), getSrc(1));
1208 } 1208 }
1209 1209
1210 template <> void InstMIPS32Xori::emitIAS(const Cfg *Func) const { 1210 template <> void InstMIPS32Xori::emitIAS(const Cfg *Func) const {
1211 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>(); 1211 auto *Asm = Func->getAssembler<MIPS32::AssemblerMIPS32>();
1212 Asm->xori(getDest(), getSrc(0), Imm); 1212 Asm->xori(getDest(), getSrc(0), Imm);
1213 } 1213 }
1214 1214
1215 } // end of namespace MIPS32 1215 } // end of namespace MIPS32
1216 } // end of namespace Ice 1216 } // end of namespace Ice
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698