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

Side by Side Diff: src/ia32/assembler-ia32.h

Issue 27197013: Tweak Math.log on ia32/x64 (Closed) Base URL: git://github.com/v8/v8.git@master
Patch Set: addressed comments Created 7 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
« no previous file with comments | « no previous file | src/ia32/assembler-ia32.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 1994-2006 Sun Microsystems Inc. 1 // Copyright (c) 1994-2006 Sun Microsystems Inc.
2 // All Rights Reserved. 2 // All Rights Reserved.
3 // 3 //
4 // Redistribution and use in source and binary forms, with or without 4 // Redistribution and use in source and binary forms, with or without
5 // modification, are permitted provided that the following conditions are 5 // modification, are permitted provided that the following conditions are
6 // met: 6 // met:
7 // 7 //
8 // - Redistributions of source code must retain the above copyright notice, 8 // - Redistributions of source code must retain the above copyright notice,
9 // this list of conditions and the following disclaimer. 9 // this list of conditions and the following disclaimer.
10 // 10 //
(...skipping 1054 matching lines...) Expand 10 before | Expand all | Expand 10 after
1065 void movdqu(XMMRegister dst, const Operand& src); 1065 void movdqu(XMMRegister dst, const Operand& src);
1066 void movdqu(const Operand& dst, XMMRegister src); 1066 void movdqu(const Operand& dst, XMMRegister src);
1067 void movdq(bool aligned, XMMRegister dst, const Operand& src) { 1067 void movdq(bool aligned, XMMRegister dst, const Operand& src) {
1068 if (aligned) { 1068 if (aligned) {
1069 movdqa(dst, src); 1069 movdqa(dst, src);
1070 } else { 1070 } else {
1071 movdqu(dst, src); 1071 movdqu(dst, src);
1072 } 1072 }
1073 } 1073 }
1074 1074
1075 // Use either movsd or movlpd.
1076 void movdbl(XMMRegister dst, const Operand& src);
1077 void movdbl(const Operand& dst, XMMRegister src);
1078
1079 void movd(XMMRegister dst, Register src) { movd(dst, Operand(src)); } 1075 void movd(XMMRegister dst, Register src) { movd(dst, Operand(src)); }
1080 void movd(XMMRegister dst, const Operand& src); 1076 void movd(XMMRegister dst, const Operand& src);
1081 void movd(Register dst, XMMRegister src) { movd(Operand(dst), src); } 1077 void movd(Register dst, XMMRegister src) { movd(Operand(dst), src); }
1082 void movd(const Operand& dst, XMMRegister src); 1078 void movd(const Operand& dst, XMMRegister src);
1083 void movsd(XMMRegister dst, XMMRegister src); 1079 void movsd(XMMRegister dst, XMMRegister src);
1080 void movsd(XMMRegister dst, const Operand& src);
1081 void movsd(const Operand& dst, XMMRegister src);
1082
1084 1083
1085 void movss(XMMRegister dst, const Operand& src); 1084 void movss(XMMRegister dst, const Operand& src);
1086 void movss(const Operand& dst, XMMRegister src); 1085 void movss(const Operand& dst, XMMRegister src);
1087 void movss(XMMRegister dst, XMMRegister src); 1086 void movss(XMMRegister dst, XMMRegister src);
1088 void extractps(Register dst, XMMRegister src, byte imm8); 1087 void extractps(Register dst, XMMRegister src, byte imm8);
1089 1088
1090 void pand(XMMRegister dst, XMMRegister src); 1089 void pand(XMMRegister dst, XMMRegister src);
1091 void pxor(XMMRegister dst, XMMRegister src); 1090 void pxor(XMMRegister dst, XMMRegister src);
1092 void por(XMMRegister dst, XMMRegister src); 1091 void por(XMMRegister dst, XMMRegister src);
1093 void ptest(XMMRegister dst, XMMRegister src); 1092 void ptest(XMMRegister dst, XMMRegister src);
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
1155 return (buffer_ + buffer_size_) - reloc_info_writer.pos(); 1154 return (buffer_ + buffer_size_) - reloc_info_writer.pos();
1156 } 1155 }
1157 1156
1158 // Avoid overflows for displacements etc. 1157 // Avoid overflows for displacements etc.
1159 static const int kMaximalBufferSize = 512*MB; 1158 static const int kMaximalBufferSize = 512*MB;
1160 1159
1161 byte byte_at(int pos) { return buffer_[pos]; } 1160 byte byte_at(int pos) { return buffer_[pos]; }
1162 void set_byte_at(int pos, byte value) { buffer_[pos] = value; } 1161 void set_byte_at(int pos, byte value) { buffer_[pos] = value; }
1163 1162
1164 protected: 1163 protected:
1165 void movsd(XMMRegister dst, const Operand& src);
1166 void movsd(const Operand& dst, XMMRegister src);
1167
1168 void emit_sse_operand(XMMRegister reg, const Operand& adr); 1164 void emit_sse_operand(XMMRegister reg, const Operand& adr);
1169 void emit_sse_operand(XMMRegister dst, XMMRegister src); 1165 void emit_sse_operand(XMMRegister dst, XMMRegister src);
1170 void emit_sse_operand(Register dst, XMMRegister src); 1166 void emit_sse_operand(Register dst, XMMRegister src);
1171 void emit_sse_operand(XMMRegister dst, Register src); 1167 void emit_sse_operand(XMMRegister dst, Register src);
1172 1168
1173 byte* addr_at(int pos) { return buffer_ + pos; } 1169 byte* addr_at(int pos) { return buffer_ + pos; }
1174 1170
1175 1171
1176 private: 1172 private:
1177 uint32_t long_at(int pos) { 1173 uint32_t long_at(int pos) {
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
1257 private: 1253 private:
1258 Assembler* assembler_; 1254 Assembler* assembler_;
1259 #ifdef DEBUG 1255 #ifdef DEBUG
1260 int space_before_; 1256 int space_before_;
1261 #endif 1257 #endif
1262 }; 1258 };
1263 1259
1264 } } // namespace v8::internal 1260 } } // namespace v8::internal
1265 1261
1266 #endif // V8_IA32_ASSEMBLER_IA32_H_ 1262 #endif // V8_IA32_ASSEMBLER_IA32_H_
OLDNEW
« no previous file with comments | « no previous file | src/ia32/assembler-ia32.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698