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

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

Issue 5550003: Add optimized compiler support for generic global loads.... (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: '' Created 10 years 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 2010 the V8 project authors. All rights reserved. 1 // Copyright 2010 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 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
81 // LConstantD 81 // LConstantD
82 // LConstantI 82 // LConstantI
83 // LConstantT 83 // LConstantT
84 // LDeoptimize 84 // LDeoptimize
85 // LFunctionLiteral 85 // LFunctionLiteral
86 // LGlobalObject 86 // LGlobalObject
87 // LGlobalReceiver 87 // LGlobalReceiver
88 // LLabel 88 // LLabel
89 // LLayzBailout 89 // LLayzBailout
90 // LLoadGlobal 90 // LLoadGlobal
91 // LLoadGlobalGeneric
91 // LMaterializedLiteral 92 // LMaterializedLiteral
92 // LArrayLiteral 93 // LArrayLiteral
93 // LObjectLiteral 94 // LObjectLiteral
94 // LRegExpLiteral 95 // LRegExpLiteral
95 // LOsrEntry 96 // LOsrEntry
96 // LParameter 97 // LParameter
97 // LRegExpConstructResult 98 // LRegExpConstructResult
98 // LStackCheck 99 // LStackCheck
99 // LStoreKeyed 100 // LStoreKeyed
100 // LStoreKeyedFastElement 101 // LStoreKeyedFastElement
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
210 V(HasInstanceType) \ 211 V(HasInstanceType) \
211 V(HasInstanceTypeAndBranch) \ 212 V(HasInstanceTypeAndBranch) \
212 V(HasCachedArrayIndex) \ 213 V(HasCachedArrayIndex) \
213 V(HasCachedArrayIndexAndBranch) \ 214 V(HasCachedArrayIndexAndBranch) \
214 V(ClassOfTest) \ 215 V(ClassOfTest) \
215 V(ClassOfTestAndBranch) \ 216 V(ClassOfTestAndBranch) \
216 V(Label) \ 217 V(Label) \
217 V(LazyBailout) \ 218 V(LazyBailout) \
218 V(LoadElements) \ 219 V(LoadElements) \
219 V(LoadGlobal) \ 220 V(LoadGlobal) \
221 V(LoadGlobalGeneric) \
220 V(LoadKeyedFastElement) \ 222 V(LoadKeyedFastElement) \
221 V(LoadKeyedGeneric) \ 223 V(LoadKeyedGeneric) \
222 V(LoadNamedField) \ 224 V(LoadNamedField) \
223 V(LoadNamedGeneric) \ 225 V(LoadNamedGeneric) \
224 V(ModI) \ 226 V(ModI) \
225 V(MulI) \ 227 V(MulI) \
226 V(NumberTagD) \ 228 V(NumberTagD) \
227 V(NumberTagI) \ 229 V(NumberTagI) \
228 V(NumberUntagD) \ 230 V(NumberUntagD) \
229 V(ObjectLiteral) \ 231 V(ObjectLiteral) \
(...skipping 1023 matching lines...) Expand 10 before | Expand all | Expand 10 after
1253 }; 1255 };
1254 1256
1255 1257
1256 class LLoadGlobal: public LInstruction { 1258 class LLoadGlobal: public LInstruction {
1257 public: 1259 public:
1258 DECLARE_CONCRETE_INSTRUCTION(LoadGlobal, "load-global") 1260 DECLARE_CONCRETE_INSTRUCTION(LoadGlobal, "load-global")
1259 DECLARE_HYDROGEN_ACCESSOR(LoadGlobal) 1261 DECLARE_HYDROGEN_ACCESSOR(LoadGlobal)
1260 }; 1262 };
1261 1263
1262 1264
1265 class LLoadGlobalGeneric: public LInstruction {
1266 public:
1267 DECLARE_CONCRETE_INSTRUCTION(LoadGlobalGeneric, "load-global-generic")
1268 DECLARE_HYDROGEN_ACCESSOR(LoadGlobalGeneric)
1269 };
1270
1271
1263 class LStoreGlobal: public LUnaryOperation { 1272 class LStoreGlobal: public LUnaryOperation {
1264 public: 1273 public:
1265 explicit LStoreGlobal(LOperand* value) : LUnaryOperation(value) {} 1274 explicit LStoreGlobal(LOperand* value) : LUnaryOperation(value) {}
1266 1275
1267 DECLARE_CONCRETE_INSTRUCTION(StoreGlobal, "store-global") 1276 DECLARE_CONCRETE_INSTRUCTION(StoreGlobal, "store-global")
1268 DECLARE_HYDROGEN_ACCESSOR(StoreGlobal) 1277 DECLARE_HYDROGEN_ACCESSOR(StoreGlobal)
1269 }; 1278 };
1270 1279
1271 1280
1272 class LPushArgument: public LUnaryOperation { 1281 class LPushArgument: public LUnaryOperation {
(...skipping 789 matching lines...) Expand 10 before | Expand all | Expand 10 after
2062 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); 2071 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder);
2063 }; 2072 };
2064 2073
2065 #undef DECLARE_HYDROGEN_ACCESSOR 2074 #undef DECLARE_HYDROGEN_ACCESSOR
2066 #undef DECLARE_INSTRUCTION 2075 #undef DECLARE_INSTRUCTION
2067 #undef DECLARE_CONCRETE_INSTRUCTION 2076 #undef DECLARE_CONCRETE_INSTRUCTION
2068 2077
2069 } } // namespace v8::internal 2078 } } // namespace v8::internal
2070 2079
2071 #endif // V8_IA32_LITHIUM_IA32_H_ 2080 #endif // V8_IA32_LITHIUM_IA32_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698