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

Side by Side Diff: runtime/vm/assembler_x64.h

Issue 12212151: Revert SSE assembler changes (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 10 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 | Annotate | Revision Log
« no previous file with comments | « runtime/vm/assembler_ia32_test.cc ('k') | runtime/vm/assembler_x64.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) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #ifndef VM_ASSEMBLER_X64_H_ 5 #ifndef VM_ASSEMBLER_X64_H_
6 #define VM_ASSEMBLER_X64_H_ 6 #define VM_ASSEMBLER_X64_H_
7 7
8 #ifndef VM_ASSEMBLER_H_ 8 #ifndef VM_ASSEMBLER_H_
9 #error Do not include assembler_x64.h directly; use assembler.h instead. 9 #error Do not include assembler_x64.h directly; use assembler.h instead.
10 #endif 10 #endif
(...skipping 365 matching lines...) Expand 10 before | Expand all | Expand 10 after
376 void subss(XmmRegister dst, XmmRegister src); 376 void subss(XmmRegister dst, XmmRegister src);
377 void mulss(XmmRegister dst, XmmRegister src); 377 void mulss(XmmRegister dst, XmmRegister src);
378 void divss(XmmRegister dst, XmmRegister src); 378 void divss(XmmRegister dst, XmmRegister src);
379 379
380 void movsd(XmmRegister dst, const Address& src); 380 void movsd(XmmRegister dst, const Address& src);
381 void movsd(const Address& dst, XmmRegister src); 381 void movsd(const Address& dst, XmmRegister src);
382 void movsd(XmmRegister dst, XmmRegister src); 382 void movsd(XmmRegister dst, XmmRegister src);
383 383
384 void movaps(XmmRegister dst, XmmRegister src); 384 void movaps(XmmRegister dst, XmmRegister src);
385 385
386 void movups(const Address& dst, XmmRegister src);
387 void movups(XmmRegister dst, const Address& src);
388
389 void addsd(XmmRegister dst, XmmRegister src); 386 void addsd(XmmRegister dst, XmmRegister src);
390 void subsd(XmmRegister dst, XmmRegister src); 387 void subsd(XmmRegister dst, XmmRegister src);
391 void mulsd(XmmRegister dst, XmmRegister src); 388 void mulsd(XmmRegister dst, XmmRegister src);
392 void divsd(XmmRegister dst, XmmRegister src); 389 void divsd(XmmRegister dst, XmmRegister src);
393 390
394 void addps(XmmRegister dst, XmmRegister src);
395 void subps(XmmRegister dst, XmmRegister src);
396 void divps(XmmRegister dst, XmmRegister src);
397 void mulps(XmmRegister dst, XmmRegister src);
398 void minps(XmmRegister dst, XmmRegister src);
399 void maxps(XmmRegister dst, XmmRegister src);
400 void andps(XmmRegister dst, XmmRegister src);
401 void andps(XmmRegister dst, const Address& src);
402 void orps(XmmRegister dst, XmmRegister src);
403 void notps(XmmRegister dst);
404 void negateps(XmmRegister dst);
405 void absps(XmmRegister dst);
406 void zerowps(XmmRegister dst);
407 void cmppseq(XmmRegister dst, XmmRegister src);
408 void cmppsneq(XmmRegister dst, XmmRegister src);
409 void cmppslt(XmmRegister dst, XmmRegister src);
410 void cmppsle(XmmRegister dst, XmmRegister src);
411 void cmppsnlt(XmmRegister dst, XmmRegister src);
412 void cmppsnle(XmmRegister dst, XmmRegister src);
413 void sqrtps(XmmRegister dst);
414 void rsqrtps(XmmRegister dst);
415 void reciprocalps(XmmRegister dst);
416
417 void set1ps(XmmRegister dst, Register tmp, const Immediate& imm);
418 void shufps(XmmRegister dst, XmmRegister src, const Immediate& mask);
419
420 void comisd(XmmRegister a, XmmRegister b); 391 void comisd(XmmRegister a, XmmRegister b);
421 void cvtsi2sd(XmmRegister a, Register b); 392 void cvtsi2sd(XmmRegister a, Register b);
422 void cvttsd2siq(Register dst, XmmRegister src); 393 void cvttsd2siq(Register dst, XmmRegister src);
423 394
424 void cvtss2sd(XmmRegister dst, XmmRegister src); 395 void cvtss2sd(XmmRegister dst, XmmRegister src);
425 void cvtsd2ss(XmmRegister dst, XmmRegister src); 396 void cvtsd2ss(XmmRegister dst, XmmRegister src);
426 397
427 void pxor(XmmRegister dst, XmmRegister src); 398 void pxor(XmmRegister dst, XmmRegister src);
428 399
429 enum RoundingMode { 400 enum RoundingMode {
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
529 500
530 void negl(Register reg); 501 void negl(Register reg);
531 void negq(Register reg); 502 void negq(Register reg);
532 void notq(Register reg); 503 void notq(Register reg);
533 504
534 void enter(const Immediate& imm); 505 void enter(const Immediate& imm);
535 void leave(); 506 void leave();
536 void ret(); 507 void ret();
537 508
538 void movmskpd(Register dst, XmmRegister src); 509 void movmskpd(Register dst, XmmRegister src);
539 void movmskps(Register dst, XmmRegister src);
540 510
541 void sqrtsd(XmmRegister dst, XmmRegister src); 511 void sqrtsd(XmmRegister dst, XmmRegister src);
542 512
543 void xorpd(XmmRegister dst, const Address& src); 513 void xorpd(XmmRegister dst, const Address& src);
544 void xorpd(XmmRegister dst, XmmRegister src); 514 void xorpd(XmmRegister dst, XmmRegister src);
545 515
546 void xorps(XmmRegister dst, const Address& src);
547 void xorps(XmmRegister dst, XmmRegister src);
548
549 void andpd(XmmRegister dst, const Address& src); 516 void andpd(XmmRegister dst, const Address& src);
550 517
551 void fldl(const Address& src); 518 void fldl(const Address& src);
552 void fstpl(const Address& dst); 519 void fstpl(const Address& dst);
553 520
554 void fildl(const Address& src); 521 void fildl(const Address& src);
555 522
556 void fincstp(); 523 void fincstp();
557 void ffree(intptr_t value); 524 void ffree(intptr_t value);
558 525
(...skipping 284 matching lines...) Expand 10 before | Expand all | Expand 10 after
843 } 810 }
844 811
845 812
846 inline void Assembler::EmitOperandSizeOverride() { 813 inline void Assembler::EmitOperandSizeOverride() {
847 EmitUint8(0x66); 814 EmitUint8(0x66);
848 } 815 }
849 816
850 } // namespace dart 817 } // namespace dart
851 818
852 #endif // VM_ASSEMBLER_X64_H_ 819 #endif // VM_ASSEMBLER_X64_H_
OLDNEW
« no previous file with comments | « runtime/vm/assembler_ia32_test.cc ('k') | runtime/vm/assembler_x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698