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

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

Issue 12208013: Separated smi check from HBoundsCheck. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 10 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 | 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 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
85 V(CmpObjectEqAndBranch) \ 85 V(CmpObjectEqAndBranch) \
86 V(CmpMapAndBranch) \ 86 V(CmpMapAndBranch) \
87 V(CmpT) \ 87 V(CmpT) \
88 V(ConstantD) \ 88 V(ConstantD) \
89 V(ConstantI) \ 89 V(ConstantI) \
90 V(ConstantT) \ 90 V(ConstantT) \
91 V(Context) \ 91 V(Context) \
92 V(DeclareGlobals) \ 92 V(DeclareGlobals) \
93 V(DeleteProperty) \ 93 V(DeleteProperty) \
94 V(Deoptimize) \ 94 V(Deoptimize) \
95 V(DeoptimizeIfTaggedIsNotSmi) \
95 V(DivI) \ 96 V(DivI) \
96 V(DoubleToI) \ 97 V(DoubleToI) \
97 V(DummyUse) \ 98 V(DummyUse) \
98 V(ElementsKind) \ 99 V(ElementsKind) \
99 V(FastLiteral) \ 100 V(FastLiteral) \
100 V(FixedArrayBaseLength) \ 101 V(FixedArrayBaseLength) \
101 V(MapEnumLength) \ 102 V(MapEnumLength) \
102 V(FunctionLiteral) \ 103 V(FunctionLiteral) \
103 V(GetCachedArrayIndex) \ 104 V(GetCachedArrayIndex) \
104 V(GlobalObject) \ 105 V(GlobalObject) \
(...skipping 2031 matching lines...) Expand 10 before | Expand all | Expand 10 after
2136 explicit LCheckSmi(LOperand* value) { 2137 explicit LCheckSmi(LOperand* value) {
2137 inputs_[0] = value; 2138 inputs_[0] = value;
2138 } 2139 }
2139 2140
2140 LOperand* value() { return inputs_[0]; } 2141 LOperand* value() { return inputs_[0]; }
2141 2142
2142 DECLARE_CONCRETE_INSTRUCTION(CheckSmi, "check-smi") 2143 DECLARE_CONCRETE_INSTRUCTION(CheckSmi, "check-smi")
2143 }; 2144 };
2144 2145
2145 2146
2147 class LDeoptimizeIfTaggedIsNotSmi: public LTemplateInstruction<0, 1, 0> {
2148 public:
2149 explicit LDeoptimizeIfTaggedIsNotSmi(LOperand* value) {
2150 inputs_[0] = value;
2151 }
2152
2153 LOperand* value() { return inputs_[0]; }
2154
2155 DECLARE_CONCRETE_INSTRUCTION(DeoptimizeIfTaggedIsNotSmi,
2156 "deoptimize-if-tagged-is-not-smi")
2157 };
2158
2159
2146 class LClampDToUint8: public LTemplateInstruction<1, 1, 0> { 2160 class LClampDToUint8: public LTemplateInstruction<1, 1, 0> {
2147 public: 2161 public:
2148 explicit LClampDToUint8(LOperand* unclamped) { 2162 explicit LClampDToUint8(LOperand* unclamped) {
2149 inputs_[0] = unclamped; 2163 inputs_[0] = unclamped;
2150 } 2164 }
2151 2165
2152 LOperand* unclamped() { return inputs_[0]; } 2166 LOperand* unclamped() { return inputs_[0]; }
2153 2167
2154 DECLARE_CONCRETE_INSTRUCTION(ClampDToUint8, "clamp-d-to-uint8") 2168 DECLARE_CONCRETE_INSTRUCTION(ClampDToUint8, "clamp-d-to-uint8")
2155 }; 2169 };
(...skipping 432 matching lines...) Expand 10 before | Expand all | Expand 10 after
2588 2602
2589 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); 2603 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder);
2590 }; 2604 };
2591 2605
2592 #undef DECLARE_HYDROGEN_ACCESSOR 2606 #undef DECLARE_HYDROGEN_ACCESSOR
2593 #undef DECLARE_CONCRETE_INSTRUCTION 2607 #undef DECLARE_CONCRETE_INSTRUCTION
2594 2608
2595 } } // namespace v8::int 2609 } } // namespace v8::int
2596 2610
2597 #endif // V8_X64_LITHIUM_X64_H_ 2611 #endif // V8_X64_LITHIUM_X64_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698