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

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

Issue 10693: Merged bleeding_edge -r 685:746 into regexp2000. (Closed) Base URL: http://v8.googlecode.com/svn/branches/experimental/regexp2000/
Patch Set: Created 12 years, 1 month 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 | « src/api.cc ('k') | src/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 435 matching lines...) Expand 10 before | Expand all | Expand 10 after
446 446
447 // Moves 447 // Moves
448 void mov_b(Register dst, const Operand& src); 448 void mov_b(Register dst, const Operand& src);
449 void mov_b(const Operand& dst, int8_t imm8); 449 void mov_b(const Operand& dst, int8_t imm8);
450 void mov_b(const Operand& dst, Register src); 450 void mov_b(const Operand& dst, Register src);
451 451
452 void mov_w(Register dst, const Operand& src); 452 void mov_w(Register dst, const Operand& src);
453 void mov_w(const Operand& dst, Register src); 453 void mov_w(const Operand& dst, Register src);
454 454
455 void mov(Register dst, int32_t imm32); 455 void mov(Register dst, int32_t imm32);
456 void mov(Register dst, const Immediate& x);
456 void mov(Register dst, Handle<Object> handle); 457 void mov(Register dst, Handle<Object> handle);
457 void mov(Register dst, const Operand& src); 458 void mov(Register dst, const Operand& src);
459 void mov(Register dst, Register src);
458 void mov(const Operand& dst, const Immediate& x); 460 void mov(const Operand& dst, const Immediate& x);
459 void mov(const Operand& dst, Handle<Object> handle); 461 void mov(const Operand& dst, Handle<Object> handle);
460 void mov(const Operand& dst, Register src); 462 void mov(const Operand& dst, Register src);
461 463
462 void movsx_b(Register dst, const Operand& src); 464 void movsx_b(Register dst, const Operand& src);
463 465
464 void movsx_w(Register dst, const Operand& src); 466 void movsx_w(Register dst, const Operand& src);
465 467
466 void movzx_b(Register dst, const Operand& src); 468 void movzx_b(Register dst, const Operand& src);
467 469
(...skipping 282 matching lines...) Expand 10 before | Expand all | Expand 10 after
750 // instruction generation 752 // instruction generation
751 void emit_arith_b(int op1, int op2, Register dst, int imm8); 753 void emit_arith_b(int op1, int op2, Register dst, int imm8);
752 754
753 // Emit a basic arithmetic instruction (i.e. first byte of the family is 0x81) 755 // Emit a basic arithmetic instruction (i.e. first byte of the family is 0x81)
754 // with a given destination expression and an immediate operand. It attempts 756 // with a given destination expression and an immediate operand. It attempts
755 // to use the shortest encoding possible. 757 // to use the shortest encoding possible.
756 // sel specifies the /n in the modrm byte (see the Intel PRM). 758 // sel specifies the /n in the modrm byte (see the Intel PRM).
757 void emit_arith(int sel, Operand dst, const Immediate& x); 759 void emit_arith(int sel, Operand dst, const Immediate& x);
758 760
759 void emit_operand(Register reg, const Operand& adr); 761 void emit_operand(Register reg, const Operand& adr);
760 void emit_operand(const Operand& adr, Register reg);
761 762
762 void emit_farith(int b1, int b2, int i); 763 void emit_farith(int b1, int b2, int i);
763 764
764 // labels 765 // labels
765 void print(Label* L); 766 void print(Label* L);
766 void bind_to(Label* L, int pos); 767 void bind_to(Label* L, int pos);
767 void link_to(Label* L, Label* appendix); 768 void link_to(Label* L, Label* appendix);
768 769
769 // displacements 770 // displacements
770 inline Displacement disp_at(Label* L); 771 inline Displacement disp_at(Label* L);
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
802 private: 803 private:
803 Assembler* assembler_; 804 Assembler* assembler_;
804 #ifdef DEBUG 805 #ifdef DEBUG
805 int space_before_; 806 int space_before_;
806 #endif 807 #endif
807 }; 808 };
808 809
809 } } // namespace v8::internal 810 } } // namespace v8::internal
810 811
811 #endif // V8_ASSEMBLER_IA32_H_ 812 #endif // V8_ASSEMBLER_IA32_H_
OLDNEW
« no previous file with comments | « src/api.cc ('k') | src/assembler-ia32.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698