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

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

Issue 19752004: Add the emitp function for X64 assembler (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: Created 7 years, 5 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 | « no previous file | src/x64/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) 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 1426 matching lines...) Expand 10 before | Expand all | Expand 10 after
1437 } 1437 }
1438 void long_at_put(int pos, uint32_t x) { 1438 void long_at_put(int pos, uint32_t x) {
1439 *reinterpret_cast<uint32_t*>(addr_at(pos)) = x; 1439 *reinterpret_cast<uint32_t*>(addr_at(pos)) = x;
1440 } 1440 }
1441 1441
1442 // code emission 1442 // code emission
1443 void GrowBuffer(); 1443 void GrowBuffer();
1444 1444
1445 void emit(byte x) { *pc_++ = x; } 1445 void emit(byte x) { *pc_++ = x; }
1446 inline void emitl(uint32_t x); 1446 inline void emitl(uint32_t x);
1447 inline void emitp(void* x, RelocInfo::Mode rmode);
1447 inline void emitq(uint64_t x, RelocInfo::Mode rmode); 1448 inline void emitq(uint64_t x, RelocInfo::Mode rmode);
1448 inline void emitw(uint16_t x); 1449 inline void emitw(uint16_t x);
1449 inline void emit_code_target(Handle<Code> target, 1450 inline void emit_code_target(Handle<Code> target,
1450 RelocInfo::Mode rmode, 1451 RelocInfo::Mode rmode,
1451 TypeFeedbackId ast_id = TypeFeedbackId::None()); 1452 TypeFeedbackId ast_id = TypeFeedbackId::None());
1452 inline void emit_runtime_entry(Address entry, RelocInfo::Mode rmode); 1453 inline void emit_runtime_entry(Address entry, RelocInfo::Mode rmode);
1453 void emit(Immediate x) { emitl(x.value_); } 1454 void emit(Immediate x) { emitl(x.value_); }
1454 1455
1455 // Emits a REX prefix that encodes a 64-bit operand size and 1456 // Emits a REX prefix that encodes a 64-bit operand size and
1456 // the top bit of both register codes. 1457 // the top bit of both register codes.
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after
1651 private: 1652 private:
1652 Assembler* assembler_; 1653 Assembler* assembler_;
1653 #ifdef DEBUG 1654 #ifdef DEBUG
1654 int space_before_; 1655 int space_before_;
1655 #endif 1656 #endif
1656 }; 1657 };
1657 1658
1658 } } // namespace v8::internal 1659 } } // namespace v8::internal
1659 1660
1660 #endif // V8_X64_ASSEMBLER_X64_H_ 1661 #endif // V8_X64_ASSEMBLER_X64_H_
OLDNEW
« no previous file with comments | « no previous file | src/x64/assembler-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698