Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 107 // LOsrEntry | 107 // LOsrEntry |
| 108 // LParameter | 108 // LParameter |
| 109 // LRegExpConstructResult | 109 // LRegExpConstructResult |
| 110 // LStackCheck | 110 // LStackCheck |
| 111 // LStoreKeyed | 111 // LStoreKeyed |
| 112 // LStoreKeyedFastElement | 112 // LStoreKeyedFastElement |
| 113 // LStoreKeyedGeneric | 113 // LStoreKeyedGeneric |
| 114 // LStoreNamed | 114 // LStoreNamed |
| 115 // LStoreNamedField | 115 // LStoreNamedField |
| 116 // LStoreNamedGeneric | 116 // LStoreNamedGeneric |
| 117 // LStringCharCodeAt | |
| 117 // LBitNotI | 118 // LBitNotI |
| 118 // LCallNew | 119 // LCallNew |
| 119 // LCheckFunction | 120 // LCheckFunction |
| 120 // LCheckPrototypeMaps | 121 // LCheckPrototypeMaps |
| 121 // LCheckInstanceType | 122 // LCheckInstanceType |
| 122 // LCheckMap | 123 // LCheckMap |
| 123 // LCheckSmi | 124 // LCheckSmi |
| 124 // LClassOfTest | 125 // LClassOfTest |
| 125 // LDeleteProperty | 126 // LDeleteProperty |
| 126 // LDoubleToI | 127 // LDoubleToI |
| 127 // LFixedArrayLength | 128 // LFixedArrayLength |
| 128 // LHasCachedArrayIndex | 129 // LHasCachedArrayIndex |
| 129 // LHasInstanceType | 130 // LHasInstanceType |
| 130 // LInteger32ToDouble | 131 // LInteger32ToDouble |
| 131 // LIsNull | 132 // LIsNull |
| 132 // LIsObject | 133 // LIsObject |
| 133 // LIsSmi | 134 // LIsSmi |
| 134 // LJSArrayLength | 135 // LJSArrayLength |
| 135 // LLoadNamedField | 136 // LLoadNamedField |
| 136 // LLoadNamedGeneric | 137 // LLoadNamedGeneric |
| 137 // LLoadFunctionPrototype | 138 // LLoadFunctionPrototype |
| 138 // LNumberTagD | 139 // LNumberTagD |
| 139 // LNumberTagI | 140 // LNumberTagI |
| 140 // LPushArgument | 141 // LPushArgument |
| 141 // LReturn | 142 // LReturn |
| 142 // LSmiTag | 143 // LSmiTag |
| 143 // LStoreGlobal | 144 // LStoreGlobal |
| 145 // LStringLength | |
| 144 // LTaggedToI | 146 // LTaggedToI |
| 145 // LThrow | 147 // LThrow |
| 146 // LTypeof | 148 // LTypeof |
| 147 // LTypeofIs | 149 // LTypeofIs |
| 148 // LUnaryMathOperation | 150 // LUnaryMathOperation |
| 149 // LValueOf | 151 // LValueOf |
| 150 // LUnknownOSRValue | 152 // LUnknownOSRValue |
| 151 | 153 |
| 152 #define LITHIUM_ALL_INSTRUCTION_LIST(V) \ | 154 #define LITHIUM_ALL_INSTRUCTION_LIST(V) \ |
| 153 V(ControlInstruction) \ | 155 V(ControlInstruction) \ |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 246 V(Return) \ | 248 V(Return) \ |
| 247 V(ShiftI) \ | 249 V(ShiftI) \ |
| 248 V(SmiTag) \ | 250 V(SmiTag) \ |
| 249 V(SmiUntag) \ | 251 V(SmiUntag) \ |
| 250 V(StackCheck) \ | 252 V(StackCheck) \ |
| 251 V(StoreGlobal) \ | 253 V(StoreGlobal) \ |
| 252 V(StoreKeyedFastElement) \ | 254 V(StoreKeyedFastElement) \ |
| 253 V(StoreKeyedGeneric) \ | 255 V(StoreKeyedGeneric) \ |
| 254 V(StoreNamedField) \ | 256 V(StoreNamedField) \ |
| 255 V(StoreNamedGeneric) \ | 257 V(StoreNamedGeneric) \ |
| 258 V(StringCharCodeAt) \ | |
| 259 V(StringLength) \ | |
| 256 V(SubI) \ | 260 V(SubI) \ |
| 257 V(TaggedToI) \ | 261 V(TaggedToI) \ |
| 258 V(Throw) \ | 262 V(Throw) \ |
| 259 V(Typeof) \ | 263 V(Typeof) \ |
| 260 V(TypeofIs) \ | 264 V(TypeofIs) \ |
| 261 V(TypeofIsAndBranch) \ | 265 V(TypeofIsAndBranch) \ |
| 262 V(UnaryMathOperation) \ | 266 V(UnaryMathOperation) \ |
| 263 V(UnknownOSRValue) \ | 267 V(UnknownOSRValue) \ |
| 264 V(ValueOf) | 268 V(ValueOf) |
| 265 | 269 |
| (...skipping 1317 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1583 | 1587 |
| 1584 class LStoreKeyedGeneric: public LStoreKeyed { | 1588 class LStoreKeyedGeneric: public LStoreKeyed { |
| 1585 public: | 1589 public: |
| 1586 LStoreKeyedGeneric(LOperand* obj, LOperand* key, LOperand* val) | 1590 LStoreKeyedGeneric(LOperand* obj, LOperand* key, LOperand* val) |
| 1587 : LStoreKeyed(obj, key, val) { } | 1591 : LStoreKeyed(obj, key, val) { } |
| 1588 | 1592 |
| 1589 DECLARE_CONCRETE_INSTRUCTION(StoreKeyedGeneric, "store-keyed-generic") | 1593 DECLARE_CONCRETE_INSTRUCTION(StoreKeyedGeneric, "store-keyed-generic") |
| 1590 }; | 1594 }; |
| 1591 | 1595 |
| 1592 | 1596 |
| 1597 class LStringCharCodeAt: public LTemplateInstruction<1, 2, 0> { | |
| 1598 public: | |
| 1599 LStringCharCodeAt(LOperand* string, LOperand* index) { | |
| 1600 inputs_[0] = string; | |
| 1601 inputs_[1] = index; | |
| 1602 } | |
| 1603 | |
| 1604 DECLARE_CONCRETE_INSTRUCTION(StringCharCodeAt, "string-char-code-at") | |
| 1605 DECLARE_HYDROGEN_ACCESSOR(StringCharCodeAt) | |
| 1606 | |
| 1607 LOperand* string() { return inputs_[0]; } | |
| 1608 LOperand* index() { return inputs_[1]; } | |
| 1609 }; | |
| 1610 | |
| 1611 | |
| 1612 class LStringLength: public LTemplateInstruction<1, 1> { | |
|
fschneider
2011/01/19 16:23:44
For consistency I'd write
public LTemplateInstru
Vitaly Repeshko
2011/01/19 20:08:41
Done.
| |
| 1613 public: | |
| 1614 explicit LStringLength(LOperand* string) { | |
| 1615 inputs_[0] = string; | |
| 1616 } | |
| 1617 | |
| 1618 DECLARE_CONCRETE_INSTRUCTION(StringLength, "string-length") | |
| 1619 DECLARE_HYDROGEN_ACCESSOR(StringLength) | |
| 1620 | |
| 1621 LOperand* string() { return inputs_[0]; } | |
| 1622 }; | |
| 1623 | |
| 1624 | |
| 1593 class LCheckFunction: public LTemplateInstruction<0, 1> { | 1625 class LCheckFunction: public LTemplateInstruction<0, 1> { |
| 1594 public: | 1626 public: |
| 1595 explicit LCheckFunction(LOperand* value) { | 1627 explicit LCheckFunction(LOperand* value) { |
| 1596 inputs_[0] = value; | 1628 inputs_[0] = value; |
| 1597 } | 1629 } |
| 1598 | 1630 |
| 1599 DECLARE_CONCRETE_INSTRUCTION(CheckFunction, "check-function") | 1631 DECLARE_CONCRETE_INSTRUCTION(CheckFunction, "check-function") |
| 1600 DECLARE_HYDROGEN_ACCESSOR(CheckFunction) | 1632 DECLARE_HYDROGEN_ACCESSOR(CheckFunction) |
| 1601 }; | 1633 }; |
| 1602 | 1634 |
| (...skipping 383 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1986 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 2018 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
| 1987 }; | 2019 }; |
| 1988 | 2020 |
| 1989 #undef DECLARE_HYDROGEN_ACCESSOR | 2021 #undef DECLARE_HYDROGEN_ACCESSOR |
| 1990 #undef DECLARE_INSTRUCTION | 2022 #undef DECLARE_INSTRUCTION |
| 1991 #undef DECLARE_CONCRETE_INSTRUCTION | 2023 #undef DECLARE_CONCRETE_INSTRUCTION |
| 1992 | 2024 |
| 1993 } } // namespace v8::internal | 2025 } } // namespace v8::internal |
| 1994 | 2026 |
| 1995 #endif // V8_IA32_LITHIUM_IA32_H_ | 2027 #endif // V8_IA32_LITHIUM_IA32_H_ |
| OLD | NEW |