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

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

Issue 57383004: Improve implementation of HSeqStringSetChar. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Increase GVNFlags to 64bit. Add StringChars flag. Created 7 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
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 1265 matching lines...) Expand 10 before | Expand all | Expand 10 after
1276 DECLARE_CONCRETE_INSTRUCTION(DateField, "date-field") 1276 DECLARE_CONCRETE_INSTRUCTION(DateField, "date-field")
1277 DECLARE_HYDROGEN_ACCESSOR(DateField) 1277 DECLARE_HYDROGEN_ACCESSOR(DateField)
1278 1278
1279 private: 1279 private:
1280 Smi* index_; 1280 Smi* index_;
1281 }; 1281 };
1282 1282
1283 1283
1284 class LSeqStringSetChar V8_FINAL : public LTemplateInstruction<1, 3, 0> { 1284 class LSeqStringSetChar V8_FINAL : public LTemplateInstruction<1, 3, 0> {
1285 public: 1285 public:
1286 LSeqStringSetChar(String::Encoding encoding, 1286 LSeqStringSetChar(LOperand* string,
1287 LOperand* string,
1288 LOperand* index, 1287 LOperand* index,
1289 LOperand* value) : encoding_(encoding) { 1288 LOperand* value) {
1290 inputs_[0] = string; 1289 inputs_[0] = string;
1291 inputs_[1] = index; 1290 inputs_[1] = index;
1292 inputs_[2] = value; 1291 inputs_[2] = value;
1293 } 1292 }
1294 1293
1295 String::Encoding encoding() { return encoding_; }
1296 LOperand* string() { return inputs_[0]; } 1294 LOperand* string() { return inputs_[0]; }
1297 LOperand* index() { return inputs_[1]; } 1295 LOperand* index() { return inputs_[1]; }
1298 LOperand* value() { return inputs_[2]; } 1296 LOperand* value() { return inputs_[2]; }
1299 1297
1300 DECLARE_CONCRETE_INSTRUCTION(SeqStringSetChar, "seq-string-set-char") 1298 DECLARE_CONCRETE_INSTRUCTION(SeqStringSetChar, "seq-string-set-char")
1301 DECLARE_HYDROGEN_ACCESSOR(SeqStringSetChar) 1299 DECLARE_HYDROGEN_ACCESSOR(SeqStringSetChar)
1302
1303 private:
1304 String::Encoding encoding_;
1305 }; 1300 };
1306 1301
1307 1302
1308 class LThrow V8_FINAL : public LTemplateInstruction<0, 1, 0> { 1303 class LThrow V8_FINAL : public LTemplateInstruction<0, 1, 0> {
1309 public: 1304 public:
1310 explicit LThrow(LOperand* value) { 1305 explicit LThrow(LOperand* value) {
1311 inputs_[0] = value; 1306 inputs_[0] = value;
1312 } 1307 }
1313 1308
1314 LOperand* value() { return inputs_[0]; } 1309 LOperand* value() { return inputs_[0]; }
(...skipping 1396 matching lines...) Expand 10 before | Expand all | Expand 10 after
2711 2706
2712 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); 2707 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder);
2713 }; 2708 };
2714 2709
2715 #undef DECLARE_HYDROGEN_ACCESSOR 2710 #undef DECLARE_HYDROGEN_ACCESSOR
2716 #undef DECLARE_CONCRETE_INSTRUCTION 2711 #undef DECLARE_CONCRETE_INSTRUCTION
2717 2712
2718 } } // namespace v8::int 2713 } } // namespace v8::int
2719 2714
2720 #endif // V8_X64_LITHIUM_X64_H_ 2715 #endif // V8_X64_LITHIUM_X64_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698