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

Side by Side Diff: src/IceInstX86Base.h

Issue 1543573002: Subzero. X8664. Fixes filetype=asm. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: git pull Created 4 years, 12 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
« no previous file with comments | « src/IceInstX8664.cpp ('k') | src/IceInstX86BaseImpl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 //===- subzero/src/IceInstX86Base.h - Generic x86 instructions -*- C++ -*--===// 1 //===- subzero/src/IceInstX86Base.h - Generic x86 instructions -*- C++ -*--===//
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 1133 matching lines...) Expand 10 before | Expand all | Expand 10 after
1144 template <class Machine> 1144 template <class Machine>
1145 class InstX86Movzx 1145 class InstX86Movzx
1146 : public InstX86BaseUnaryopGPR<Machine, InstX86Base<Machine>::Movzx> { 1146 : public InstX86BaseUnaryopGPR<Machine, InstX86Base<Machine>::Movzx> {
1147 public: 1147 public:
1148 static InstX86Movzx *create(Cfg *Func, Variable *Dest, Operand *Src) { 1148 static InstX86Movzx *create(Cfg *Func, Variable *Dest, Operand *Src) {
1149 assert(typeWidthInBytes(Dest->getType()) > 1149 assert(typeWidthInBytes(Dest->getType()) >
1150 typeWidthInBytes(Src->getType())); 1150 typeWidthInBytes(Src->getType()));
1151 return new (Func->allocate<InstX86Movzx>()) InstX86Movzx(Func, Dest, Src); 1151 return new (Func->allocate<InstX86Movzx>()) InstX86Movzx(Func, Dest, Src);
1152 } 1152 }
1153 1153
1154 void emit(const Cfg *Func) const override;
1155
1154 void emitIAS(const Cfg *Func) const override; 1156 void emitIAS(const Cfg *Func) const override;
1155 1157
1156 private: 1158 private:
1157 InstX86Movzx(Cfg *Func, Variable *Dest, Operand *Src) 1159 InstX86Movzx(Cfg *Func, Variable *Dest, Operand *Src)
1158 : InstX86BaseUnaryopGPR<Machine, InstX86Base<Machine>::Movzx>(Func, Dest, 1160 : InstX86BaseUnaryopGPR<Machine, InstX86Base<Machine>::Movzx>(Func, Dest,
1159 Src) {} 1161 Src) {}
1160 }; 1162 };
1161 1163
1162 template <class Machine> 1164 template <class Machine>
1163 class InstX86Movd 1165 class InstX86Movd
1164 : public InstX86BaseUnaryopXmm<Machine, InstX86Base<Machine>::Movd> { 1166 : public InstX86BaseUnaryopXmm<Machine, InstX86Base<Machine>::Movd> {
1165 public: 1167 public:
1166 static InstX86Movd *create(Cfg *Func, Variable *Dest, Operand *Src) { 1168 static InstX86Movd *create(Cfg *Func, Variable *Dest, Operand *Src) {
1167 return new (Func->allocate<InstX86Movd>()) InstX86Movd(Func, Dest, Src); 1169 return new (Func->allocate<InstX86Movd>()) InstX86Movd(Func, Dest, Src);
1168 } 1170 }
1169 1171
1172 void emit(const Cfg *Func) const override;
1173
1170 void emitIAS(const Cfg *Func) const override; 1174 void emitIAS(const Cfg *Func) const override;
1171 1175
1172 private: 1176 private:
1173 InstX86Movd(Cfg *Func, Variable *Dest, Operand *Src) 1177 InstX86Movd(Cfg *Func, Variable *Dest, Operand *Src)
1174 : InstX86BaseUnaryopXmm<Machine, InstX86Base<Machine>::Movd>(Func, Dest, 1178 : InstX86BaseUnaryopXmm<Machine, InstX86Base<Machine>::Movd>(Func, Dest,
1175 Src) {} 1179 Src) {}
1176 }; 1180 };
1177 1181
1178 template <class Machine> 1182 template <class Machine>
1179 class InstX86Sqrtss 1183 class InstX86Sqrtss
(...skipping 2256 matching lines...) Expand 10 before | Expand all | Expand 10 after
3436 &InstX86Base<Machine>::Traits::Assembler::psrl}; \ 3440 &InstX86Base<Machine>::Traits::Assembler::psrl}; \
3437 } \ 3441 } \
3438 } 3442 }
3439 3443
3440 } // end of namespace X86Internal 3444 } // end of namespace X86Internal
3441 } // end of namespace Ice 3445 } // end of namespace Ice
3442 3446
3443 #include "IceInstX86BaseImpl.h" 3447 #include "IceInstX86BaseImpl.h"
3444 3448
3445 #endif // SUBZERO_SRC_ICEINSTX86BASE_H 3449 #endif // SUBZERO_SRC_ICEINSTX86BASE_H
OLDNEW
« no previous file with comments | « src/IceInstX8664.cpp ('k') | src/IceInstX86BaseImpl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698