OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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 1217 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1228 Operand LCodeGen::ToOperand32(LOperand* op, IntegerSignedness signedness) { | 1228 Operand LCodeGen::ToOperand32(LOperand* op, IntegerSignedness signedness) { |
1229 ASSERT(op != NULL); | 1229 ASSERT(op != NULL); |
1230 if (op->IsRegister()) { | 1230 if (op->IsRegister()) { |
1231 return Operand(ToRegister32(op)); | 1231 return Operand(ToRegister32(op)); |
1232 } else if (op->IsConstantOperand()) { | 1232 } else if (op->IsConstantOperand()) { |
1233 LConstantOperand* const_op = LConstantOperand::cast(op); | 1233 LConstantOperand* const_op = LConstantOperand::cast(op); |
1234 HConstant* constant = chunk()->LookupConstant(const_op); | 1234 HConstant* constant = chunk()->LookupConstant(const_op); |
1235 Representation r = chunk_->LookupLiteralRepresentation(const_op); | 1235 Representation r = chunk_->LookupLiteralRepresentation(const_op); |
1236 if (r.IsInteger32()) { | 1236 if (r.IsInteger32()) { |
1237 ASSERT(constant->HasInteger32Value()); | 1237 ASSERT(constant->HasInteger32Value()); |
1238 return Operand(signedness == SIGNED_INT32 | 1238 return (signedness == SIGNED_INT32) |
1239 ? constant->Integer32Value() | 1239 ? Operand(constant->Integer32Value()) |
1240 : static_cast<uint32_t>(constant->Integer32Value())); | 1240 : Operand(static_cast<uint32_t>(constant->Integer32Value())); |
1241 } else { | 1241 } else { |
1242 // Other constants not implemented. | 1242 // Other constants not implemented. |
1243 Abort(kToOperand32UnsupportedImmediate); | 1243 Abort(kToOperand32UnsupportedImmediate); |
1244 } | 1244 } |
1245 } | 1245 } |
1246 // Other cases are not implemented. | 1246 // Other cases are not implemented. |
1247 UNREACHABLE(); | 1247 UNREACHABLE(); |
1248 return Operand(0); | 1248 return Operand(0); |
1249 } | 1249 } |
1250 | 1250 |
(...skipping 4648 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5899 __ Ldr(result, FieldMemOperand(object, JSObject::kPropertiesOffset)); | 5899 __ Ldr(result, FieldMemOperand(object, JSObject::kPropertiesOffset)); |
5900 // Index is equal to negated out of object property index plus 1. | 5900 // Index is equal to negated out of object property index plus 1. |
5901 __ Sub(result, result, Operand::UntagSmiAndScale(index, kPointerSizeLog2)); | 5901 __ Sub(result, result, Operand::UntagSmiAndScale(index, kPointerSizeLog2)); |
5902 __ Ldr(result, FieldMemOperand(result, | 5902 __ Ldr(result, FieldMemOperand(result, |
5903 FixedArray::kHeaderSize - kPointerSize)); | 5903 FixedArray::kHeaderSize - kPointerSize)); |
5904 __ Bind(deferred->exit()); | 5904 __ Bind(deferred->exit()); |
5905 __ Bind(&done); | 5905 __ Bind(&done); |
5906 } | 5906 } |
5907 | 5907 |
5908 } } // namespace v8::internal | 5908 } } // namespace v8::internal |
OLD | NEW |