Chromium Code Reviews| Index: src/code-stubs.cc |
| diff --git a/src/code-stubs.cc b/src/code-stubs.cc |
| index c00719969147a033e801f33d3bb691d0d959b80c..53c36845f22bfdc98f61394c9b8b02cac3d2b126 100644 |
| --- a/src/code-stubs.cc |
| +++ b/src/code-stubs.cc |
| @@ -502,6 +502,7 @@ Handle<Code> TurboFanCodeStub::GenerateCode() { |
| // Build a "hybrid" CompilationInfo for a JSFunction/CodeStub pair. |
| ParseInfo parse_info(&zone, inner); |
| CompilationInfo info(&parse_info); |
| + info.SetFunctionType(GetCallInterfaceDescriptor().GetFunctionType()); |
| info.SetStub(this); |
| return info.GenerateCodeStub(); |
| } |
| @@ -1046,5 +1047,20 @@ InternalArrayConstructorStub::InternalArrayConstructorStub( |
| } |
| +Representation RepresentationFromType(Type* type) { |
|
Benedikt Meurer
2015/06/22 05:27:28
So UntaggedFloat64 and UntaggedFloat32 are mapped
Jarin
2015/06/22 06:51:29
I would slightly prefer if handled only the cases
danno
2015/06/23 14:39:44
Done.
danno
2015/06/23 14:39:44
I think I prefer Jaro's suggestion for now, since
|
| + if (type->Is(Type::UntaggedSigned()) || type->Is(Type::UntaggedUnsigned())) { |
| + return Representation::Integer32(); |
| + } |
| + |
| + if (type->Is(Type::TaggedSigned())) { |
| + return Representation::Smi(); |
| + } |
| + |
| + if (type->Is(Type::UntaggedPointer())) { |
| + return Representation::External(); |
| + } |
| + |
| + return Representation::Tagged(); |
| +} |
| } // namespace internal |
| } // namespace v8 |