| OLD | NEW |
| 1 // Copyright 2009 the V8 project authors. All rights reserved. | 1 // Copyright 2009 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 293 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 304 | 304 |
| 305 // Return the generated code. | 305 // Return the generated code. |
| 306 return GetCode(NORMAL, name); | 306 return GetCode(NORMAL, name); |
| 307 } | 307 } |
| 308 | 308 |
| 309 | 309 |
| 310 Object* LoadStubCompiler::CompileLoadCallback(JSObject* a, | 310 Object* LoadStubCompiler::CompileLoadCallback(JSObject* a, |
| 311 JSObject* b, | 311 JSObject* b, |
| 312 AccessorInfo* c, | 312 AccessorInfo* c, |
| 313 String* d) { | 313 String* d) { |
| 314 UNIMPLEMENTED(); | 314 // TODO(X64): Implement a real stub. |
| 315 return NULL; | 315 return Failure::InternalError(); |
| 316 } | 316 } |
| 317 | 317 |
| 318 | 318 |
| 319 Object* LoadStubCompiler::CompileLoadConstant(JSObject* a, | 319 Object* LoadStubCompiler::CompileLoadConstant(JSObject* a, |
| 320 JSObject* b, | 320 JSObject* b, |
| 321 Object* c, | 321 Object* c, |
| 322 String* d) { | 322 String* d) { |
| 323 UNIMPLEMENTED(); | 323 // TODO(X64): Implement a real stub. |
| 324 return NULL; | 324 return Failure::InternalError(); |
| 325 } | 325 } |
| 326 | 326 |
| 327 | 327 |
| 328 Object* LoadStubCompiler::CompileLoadField(JSObject* a, | 328 Object* LoadStubCompiler::CompileLoadField(JSObject* a, |
| 329 JSObject* b, | 329 JSObject* b, |
| 330 int c, | 330 int c, |
| 331 String* d) { | 331 String* d) { |
| 332 UNIMPLEMENTED(); | 332 // TODO(X64): Implement a real stub. |
| 333 return NULL; | 333 return Failure::InternalError(); |
| 334 } | 334 } |
| 335 | 335 |
| 336 | 336 |
| 337 Object* LoadStubCompiler::CompileLoadInterceptor(JSObject* a, | 337 Object* LoadStubCompiler::CompileLoadInterceptor(JSObject* a, |
| 338 JSObject* b, | 338 JSObject* b, |
| 339 String* c) { | 339 String* c) { |
| 340 UNIMPLEMENTED(); | 340 // TODO(X64): Implement a real stub. |
| 341 return NULL; | 341 return Failure::InternalError(); |
| 342 } | 342 } |
| 343 | 343 |
| 344 | 344 |
| 345 Object* LoadStubCompiler::CompileLoadGlobal(JSObject* object, | 345 Object* LoadStubCompiler::CompileLoadGlobal(JSObject* object, |
| 346 GlobalObject* holder, | 346 GlobalObject* holder, |
| 347 JSGlobalPropertyCell* cell, | 347 JSGlobalPropertyCell* cell, |
| 348 String* name, | 348 String* name, |
| 349 bool is_dont_delete) { | 349 bool is_dont_delete) { |
| 350 UNIMPLEMENTED(); | 350 // TODO(X64): Implement a real stub. |
| 351 return NULL; | 351 return Failure::InternalError(); |
| 352 } | 352 } |
| 353 | 353 |
| 354 | 354 |
| 355 Object* StoreStubCompiler::CompileStoreCallback(JSObject* a, | 355 Object* StoreStubCompiler::CompileStoreCallback(JSObject* a, |
| 356 AccessorInfo* b, | 356 AccessorInfo* b, |
| 357 String* c) { | 357 String* c) { |
| 358 UNIMPLEMENTED(); | 358 UNIMPLEMENTED(); |
| 359 return NULL; | 359 return NULL; |
| 360 } | 360 } |
| 361 | 361 |
| (...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 481 int offset = holder->map()->instance_size() + (index * kPointerSize); | 481 int offset = holder->map()->instance_size() + (index * kPointerSize); |
| 482 __ movq(dst, FieldOperand(src, offset)); | 482 __ movq(dst, FieldOperand(src, offset)); |
| 483 } else { | 483 } else { |
| 484 // Calculate the offset into the properties array. | 484 // Calculate the offset into the properties array. |
| 485 int offset = index * kPointerSize + FixedArray::kHeaderSize; | 485 int offset = index * kPointerSize + FixedArray::kHeaderSize; |
| 486 __ movq(dst, FieldOperand(src, JSObject::kPropertiesOffset)); | 486 __ movq(dst, FieldOperand(src, JSObject::kPropertiesOffset)); |
| 487 __ movq(dst, FieldOperand(dst, offset)); | 487 __ movq(dst, FieldOperand(dst, offset)); |
| 488 } | 488 } |
| 489 } | 489 } |
| 490 | 490 |
| 491 |
| 492 void StubCache::GenerateProbe(MacroAssembler* masm, |
| 493 Code::Flags flags, |
| 494 Register receiver, |
| 495 Register name, |
| 496 Register scratch, |
| 497 Register extra) { |
| 498 Label miss; |
| 499 // TODO(X64): Probe the primary and secondary StubCache tables. |
| 500 |
| 501 // Cache miss: Fall-through and let caller handle the miss by |
| 502 // entering the runtime system. |
| 503 __ bind(&miss); |
| 504 } |
| 505 |
| 506 |
| 491 #undef __ | 507 #undef __ |
| 492 | 508 |
| 493 | 509 |
| 494 } } // namespace v8::internal | 510 } } // namespace v8::internal |
| OLD | NEW |