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

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

Issue 1779713009: Implement optional turbofan UnalignedLoad and UnalignedStore operators (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Fix review remarks Created 4 years, 9 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
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 1136 matching lines...) Expand 10 before | Expand all | Expand 10 after
1147 // No embedded constant pool support. 1147 // No embedded constant pool support.
1148 UNREACHABLE(); 1148 UNREACHABLE();
1149 } 1149 }
1150 1150
1151 bool IsPrevInstrCompactBranch() { return prev_instr_compact_branch_; } 1151 bool IsPrevInstrCompactBranch() { return prev_instr_compact_branch_; }
1152 1152
1153 protected: 1153 protected:
1154 // Load Scaled Address instruction. 1154 // Load Scaled Address instruction.
1155 void lsa(Register rd, Register rt, Register rs, uint8_t sa); 1155 void lsa(Register rd, Register rt, Register rs, uint8_t sa);
1156 1156
1157 // Helpers.
1158 void LoadRegPlusOffsetToAt(const MemOperand& src);
1159
1157 // Relocation for a type-recording IC has the AST id added to it. This 1160 // Relocation for a type-recording IC has the AST id added to it. This
1158 // member variable is a way to pass the information from the call site to 1161 // member variable is a way to pass the information from the call site to
1159 // the relocation info. 1162 // the relocation info.
1160 TypeFeedbackId recorded_ast_id_; 1163 TypeFeedbackId recorded_ast_id_;
1161 1164
1162 int32_t buffer_space() const { return reloc_info_writer.pos() - pc_; } 1165 int32_t buffer_space() const { return reloc_info_writer.pos() - pc_; }
1163 1166
1164 // Decode branch instruction at pos and return branch target pos. 1167 // Decode branch instruction at pos and return branch target pos.
1165 int target_at(int pos, bool is_internal); 1168 int target_at(int pos, bool is_internal);
1166 1169
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after
1344 CompactBranchType is_compact_branch = CompactBranchType::NO); 1347 CompactBranchType is_compact_branch = CompactBranchType::NO);
1345 void GenInstrImmediate(Opcode opcode, Register rs, uint32_t offset21); 1348 void GenInstrImmediate(Opcode opcode, Register rs, uint32_t offset21);
1346 void GenInstrImmediate( 1349 void GenInstrImmediate(
1347 Opcode opcode, int32_t offset26, 1350 Opcode opcode, int32_t offset26,
1348 CompactBranchType is_compact_branch = CompactBranchType::NO); 1351 CompactBranchType is_compact_branch = CompactBranchType::NO);
1349 1352
1350 1353
1351 void GenInstrJump(Opcode opcode, 1354 void GenInstrJump(Opcode opcode,
1352 uint32_t address); 1355 uint32_t address);
1353 1356
1354 // Helpers.
1355 void LoadRegPlusOffsetToAt(const MemOperand& src);
1356 1357
1357 // Labels. 1358 // Labels.
1358 void print(Label* L); 1359 void print(Label* L);
1359 void bind_to(Label* L, int pos); 1360 void bind_to(Label* L, int pos);
1360 void next(Label* L, bool is_internal); 1361 void next(Label* L, bool is_internal);
1361 1362
1362 // One trampoline consists of: 1363 // One trampoline consists of:
1363 // - space for trampoline slots, 1364 // - space for trampoline slots,
1364 // - space for labels. 1365 // - space for labels.
1365 // 1366 //
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
1453 public: 1454 public:
1454 explicit EnsureSpace(Assembler* assembler) { 1455 explicit EnsureSpace(Assembler* assembler) {
1455 assembler->CheckBuffer(); 1456 assembler->CheckBuffer();
1456 } 1457 }
1457 }; 1458 };
1458 1459
1459 } // namespace internal 1460 } // namespace internal
1460 } // namespace v8 1461 } // namespace v8
1461 1462
1462 #endif // V8_ARM_ASSEMBLER_MIPS_H_ 1463 #endif // V8_ARM_ASSEMBLER_MIPS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698