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

Side by Side Diff: src/crankshaft/ia32/lithium-ia32.h

Issue 1579613002: [builtins] Refactor the remaining Date builtins. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: As per offline discussion, remove the weird test, which does not add a lot of value. Created 4 years, 11 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/crankshaft/ia32/lithium-codegen-ia32.cc ('k') | src/crankshaft/ia32/lithium-ia32.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 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_CRANKSHAFT_IA32_LITHIUM_IA32_H_ 5 #ifndef V8_CRANKSHAFT_IA32_LITHIUM_IA32_H_
6 #define V8_CRANKSHAFT_IA32_LITHIUM_IA32_H_ 6 #define V8_CRANKSHAFT_IA32_LITHIUM_IA32_H_
7 7
8 #include "src/crankshaft/hydrogen.h" 8 #include "src/crankshaft/hydrogen.h"
9 #include "src/crankshaft/lithium.h" 9 #include "src/crankshaft/lithium.h"
10 #include "src/crankshaft/lithium-allocator.h" 10 #include "src/crankshaft/lithium-allocator.h"
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
57 V(CmpHoleAndBranch) \ 57 V(CmpHoleAndBranch) \
58 V(CmpMapAndBranch) \ 58 V(CmpMapAndBranch) \
59 V(CmpT) \ 59 V(CmpT) \
60 V(ConstantD) \ 60 V(ConstantD) \
61 V(ConstantE) \ 61 V(ConstantE) \
62 V(ConstantI) \ 62 V(ConstantI) \
63 V(ConstantS) \ 63 V(ConstantS) \
64 V(ConstantT) \ 64 V(ConstantT) \
65 V(ConstructDouble) \ 65 V(ConstructDouble) \
66 V(Context) \ 66 V(Context) \
67 V(DateField) \
68 V(DebugBreak) \ 67 V(DebugBreak) \
69 V(DeclareGlobals) \ 68 V(DeclareGlobals) \
70 V(Deoptimize) \ 69 V(Deoptimize) \
71 V(DivByConstI) \ 70 V(DivByConstI) \
72 V(DivByPowerOf2I) \ 71 V(DivByPowerOf2I) \
73 V(DivI) \ 72 V(DivI) \
74 V(DoubleBits) \ 73 V(DoubleBits) \
75 V(DoubleToI) \ 74 V(DoubleToI) \
76 V(DoubleToSmi) \ 75 V(DoubleToSmi) \
77 V(Drop) \ 76 V(Drop) \
(...skipping 1266 matching lines...) Expand 10 before | Expand all | Expand 10 after
1344 explicit LMapEnumLength(LOperand* value) { 1343 explicit LMapEnumLength(LOperand* value) {
1345 inputs_[0] = value; 1344 inputs_[0] = value;
1346 } 1345 }
1347 1346
1348 LOperand* value() { return inputs_[0]; } 1347 LOperand* value() { return inputs_[0]; }
1349 1348
1350 DECLARE_CONCRETE_INSTRUCTION(MapEnumLength, "map-enum-length") 1349 DECLARE_CONCRETE_INSTRUCTION(MapEnumLength, "map-enum-length")
1351 }; 1350 };
1352 1351
1353 1352
1354 class LDateField final : public LTemplateInstruction<1, 1, 1> {
1355 public:
1356 LDateField(LOperand* date, LOperand* temp, Smi* index)
1357 : index_(index) {
1358 inputs_[0] = date;
1359 temps_[0] = temp;
1360 }
1361
1362 LOperand* date() { return inputs_[0]; }
1363 LOperand* temp() { return temps_[0]; }
1364
1365 DECLARE_CONCRETE_INSTRUCTION(DateField, "date-field")
1366 DECLARE_HYDROGEN_ACCESSOR(DateField)
1367
1368 Smi* index() const { return index_; }
1369
1370 private:
1371 Smi* index_;
1372 };
1373
1374
1375 class LSeqStringGetChar final : public LTemplateInstruction<1, 2, 0> { 1353 class LSeqStringGetChar final : public LTemplateInstruction<1, 2, 0> {
1376 public: 1354 public:
1377 LSeqStringGetChar(LOperand* string, LOperand* index) { 1355 LSeqStringGetChar(LOperand* string, LOperand* index) {
1378 inputs_[0] = string; 1356 inputs_[0] = string;
1379 inputs_[1] = index; 1357 inputs_[1] = index;
1380 } 1358 }
1381 1359
1382 LOperand* string() const { return inputs_[0]; } 1360 LOperand* string() const { return inputs_[0]; }
1383 LOperand* index() const { return inputs_[1]; } 1361 LOperand* index() const { return inputs_[1]; }
1384 1362
(...skipping 1414 matching lines...) Expand 10 before | Expand all | Expand 10 after
2799 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); 2777 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder);
2800 }; 2778 };
2801 2779
2802 #undef DECLARE_HYDROGEN_ACCESSOR 2780 #undef DECLARE_HYDROGEN_ACCESSOR
2803 #undef DECLARE_CONCRETE_INSTRUCTION 2781 #undef DECLARE_CONCRETE_INSTRUCTION
2804 2782
2805 } // namespace internal 2783 } // namespace internal
2806 } // namespace v8 2784 } // namespace v8
2807 2785
2808 #endif // V8_CRANKSHAFT_IA32_LITHIUM_IA32_H_ 2786 #endif // V8_CRANKSHAFT_IA32_LITHIUM_IA32_H_
OLDNEW
« no previous file with comments | « src/crankshaft/ia32/lithium-codegen-ia32.cc ('k') | src/crankshaft/ia32/lithium-ia32.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698