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

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

Issue 164135: X64: Implement fast charCodeAt. (Closed)
Patch Set: Created 11 years, 4 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/x64/assembler-x64.cc » ('j') | src/x64/codegen-x64.cc » ('J')
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 499 matching lines...) Expand 10 before | Expand all | Expand 10 after
510 void movq(Register dst, void* ptr, RelocInfo::Mode rmode); 510 void movq(Register dst, void* ptr, RelocInfo::Mode rmode);
511 void movq(Register dst, int64_t value, RelocInfo::Mode rmode); 511 void movq(Register dst, int64_t value, RelocInfo::Mode rmode);
512 void movq(Register dst, const char* s, RelocInfo::Mode rmode); 512 void movq(Register dst, const char* s, RelocInfo::Mode rmode);
513 // Moves the address of the external reference into the register. 513 // Moves the address of the external reference into the register.
514 void movq(Register dst, ExternalReference ext); 514 void movq(Register dst, ExternalReference ext);
515 void movq(Register dst, Handle<Object> handle, RelocInfo::Mode rmode); 515 void movq(Register dst, Handle<Object> handle, RelocInfo::Mode rmode);
516 516
517 void movsxlq(Register dst, Register src); 517 void movsxlq(Register dst, Register src);
518 void movsxlq(Register dst, const Operand& src); 518 void movsxlq(Register dst, const Operand& src);
519 void movzxbq(Register dst, const Operand& src); 519 void movzxbq(Register dst, const Operand& src);
520 void movzxbl(Register dst, const Operand& src);
521 void movzxwl(Register dst, const Operand& src);
520 522
521 // New x64 instruction to load from an immediate 64-bit pointer into RAX. 523 // New x64 instruction to load from an immediate 64-bit pointer into RAX.
522 void load_rax(void* ptr, RelocInfo::Mode rmode); 524 void load_rax(void* ptr, RelocInfo::Mode rmode);
523 void load_rax(ExternalReference ext); 525 void load_rax(ExternalReference ext);
524 526
525 // Conditional moves. 527 // Conditional moves.
526 void cmovq(Condition cc, Register dst, Register src); 528 void cmovq(Condition cc, Register dst, Register src);
527 void cmovq(Condition cc, Register dst, const Operand& src); 529 void cmovq(Condition cc, Register dst, const Operand& src);
528 void cmovl(Condition cc, Register dst, Register src); 530 void cmovl(Condition cc, Register dst, Register src);
529 void cmovl(Condition cc, Register dst, const Operand& src); 531 void cmovl(Condition cc, Register dst, const Operand& src);
(...skipping 696 matching lines...) Expand 10 before | Expand all | Expand 10 after
1226 private: 1228 private:
1227 Assembler* assembler_; 1229 Assembler* assembler_;
1228 #ifdef DEBUG 1230 #ifdef DEBUG
1229 int space_before_; 1231 int space_before_;
1230 #endif 1232 #endif
1231 }; 1233 };
1232 1234
1233 } } // namespace v8::internal 1235 } } // namespace v8::internal
1234 1236
1235 #endif // V8_X64_ASSEMBLER_X64_H_ 1237 #endif // V8_X64_ASSEMBLER_X64_H_
OLDNEW
« no previous file with comments | « no previous file | src/x64/assembler-x64.cc » ('j') | src/x64/codegen-x64.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698