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

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

Issue 2944013002: Remove TypeFeedbackId parameters from assembler and full-code. (Closed)
Patch Set: REBASE+fixes. Created 3 years, 6 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 | « src/mips64/macro-assembler-mips64.cc ('k') | 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 912 matching lines...) Expand 10 before | Expand all | Expand 10 after
923 // Note: The same Label can be used for forward and backward branches 923 // Note: The same Label can be used for forward and backward branches
924 // but it may be bound only once. 924 // but it may be bound only once.
925 925
926 void bind(Label* L); // binds an unbound label L to the current code position 926 void bind(Label* L); // binds an unbound label L to the current code position
927 927
928 // Calls 928 // Calls
929 // Call near relative 32-bit displacement, relative to next instruction. 929 // Call near relative 32-bit displacement, relative to next instruction.
930 void call(Label* L); 930 void call(Label* L);
931 void call(Address entry, RelocInfo::Mode rmode); 931 void call(Address entry, RelocInfo::Mode rmode);
932 void call(Handle<Code> target, 932 void call(Handle<Code> target,
933 RelocInfo::Mode rmode = RelocInfo::CODE_TARGET, 933 RelocInfo::Mode rmode = RelocInfo::CODE_TARGET);
934 TypeFeedbackId ast_id = TypeFeedbackId::None());
935 934
936 // Calls directly to the given address using a relative offset. 935 // Calls directly to the given address using a relative offset.
937 // Should only ever be used in Code objects for calls within the 936 // Should only ever be used in Code objects for calls within the
938 // same Code object. Should not be used when generating new code (use labels), 937 // same Code object. Should not be used when generating new code (use labels),
939 // but only when patching existing code. 938 // but only when patching existing code.
940 void call(Address target); 939 void call(Address target);
941 940
942 // Call near absolute indirect, address in register 941 // Call near absolute indirect, address in register
943 void call(Register adr); 942 void call(Register adr);
944 943
(...skipping 1116 matching lines...) Expand 10 before | Expand all | Expand 10 after
2061 } 2060 }
2062 2061
2063 // code emission 2062 // code emission
2064 void GrowBuffer(); 2063 void GrowBuffer();
2065 2064
2066 void emit(byte x) { *pc_++ = x; } 2065 void emit(byte x) { *pc_++ = x; }
2067 inline void emitl(uint32_t x); 2066 inline void emitl(uint32_t x);
2068 inline void emitp(void* x, RelocInfo::Mode rmode); 2067 inline void emitp(void* x, RelocInfo::Mode rmode);
2069 inline void emitq(uint64_t x); 2068 inline void emitq(uint64_t x);
2070 inline void emitw(uint16_t x); 2069 inline void emitw(uint16_t x);
2071 inline void emit_code_target(Handle<Code> target, 2070 inline void emit_code_target(Handle<Code> target, RelocInfo::Mode rmode);
2072 RelocInfo::Mode rmode,
2073 TypeFeedbackId ast_id = TypeFeedbackId::None());
2074 inline void emit_runtime_entry(Address entry, RelocInfo::Mode rmode); 2071 inline void emit_runtime_entry(Address entry, RelocInfo::Mode rmode);
2075 inline void emit(Immediate x); 2072 inline void emit(Immediate x);
2076 2073
2077 // Emits a REX prefix that encodes a 64-bit operand size and 2074 // Emits a REX prefix that encodes a 64-bit operand size and
2078 // the top bit of both register codes. 2075 // the top bit of both register codes.
2079 // High bit of reg goes to REX.R, high bit of rm_reg goes to REX.B. 2076 // High bit of reg goes to REX.R, high bit of rm_reg goes to REX.B.
2080 // REX.W is set. 2077 // REX.W is set.
2081 inline void emit_rex_64(XMMRegister reg, Register rm_reg); 2078 inline void emit_rex_64(XMMRegister reg, Register rm_reg);
2082 inline void emit_rex_64(Register reg, XMMRegister rm_reg); 2079 inline void emit_rex_64(Register reg, XMMRegister rm_reg);
2083 inline void emit_rex_64(Register reg, Register rm_reg); 2080 inline void emit_rex_64(Register reg, Register rm_reg);
(...skipping 456 matching lines...) Expand 10 before | Expand all | Expand 10 after
2540 Assembler* assembler_; 2537 Assembler* assembler_;
2541 #ifdef DEBUG 2538 #ifdef DEBUG
2542 int space_before_; 2539 int space_before_;
2543 #endif 2540 #endif
2544 }; 2541 };
2545 2542
2546 } // namespace internal 2543 } // namespace internal
2547 } // namespace v8 2544 } // namespace v8
2548 2545
2549 #endif // V8_X64_ASSEMBLER_X64_H_ 2546 #endif // V8_X64_ASSEMBLER_X64_H_
OLDNEW
« no previous file with comments | « src/mips64/macro-assembler-mips64.cc ('k') | src/x64/assembler-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698