| OLD | NEW |
| 1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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 344 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 355 void AllocateTwoByteConsString(Register result, | 355 void AllocateTwoByteConsString(Register result, |
| 356 Register length, | 356 Register length, |
| 357 Register scratch1, | 357 Register scratch1, |
| 358 Register scratch2, | 358 Register scratch2, |
| 359 Label* gc_required); | 359 Label* gc_required); |
| 360 void AllocateAsciiConsString(Register result, | 360 void AllocateAsciiConsString(Register result, |
| 361 Register length, | 361 Register length, |
| 362 Register scratch1, | 362 Register scratch1, |
| 363 Register scratch2, | 363 Register scratch2, |
| 364 Label* gc_required); | 364 Label* gc_required); |
| 365 void AllocateTwoByteSlicedString(Register result, | |
| 366 Register length, | |
| 367 Register scratch1, | |
| 368 Register scratch2, | |
| 369 Label* gc_required); | |
| 370 void AllocateAsciiSlicedString(Register result, | |
| 371 Register length, | |
| 372 Register scratch1, | |
| 373 Register scratch2, | |
| 374 Label* gc_required); | |
| 375 | 365 |
| 376 // Allocates a heap number or jumps to the gc_required label if the young | 366 // Allocates a heap number or jumps to the gc_required label if the young |
| 377 // space is full and a scavenge is needed. All registers are clobbered also | 367 // space is full and a scavenge is needed. All registers are clobbered also |
| 378 // when control continues at the gc_required label. | 368 // when control continues at the gc_required label. |
| 379 void AllocateHeapNumber(Register result, | 369 void AllocateHeapNumber(Register result, |
| 380 Register scratch1, | 370 Register scratch1, |
| 381 Register scratch2, | 371 Register scratch2, |
| 382 Register heap_number_map, | 372 Register heap_number_map, |
| 383 Label* gc_required); | 373 Label* gc_required); |
| 384 void AllocateHeapNumberWithValue(Register result, | 374 void AllocateHeapNumberWithValue(Register result, |
| (...skipping 821 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1206 | 1196 |
| 1207 // Generate a MemOperand for loading a field from an object. | 1197 // Generate a MemOperand for loading a field from an object. |
| 1208 static inline MemOperand FieldMemOperand(Register object, int offset) { | 1198 static inline MemOperand FieldMemOperand(Register object, int offset) { |
| 1209 return MemOperand(object, offset - kHeapObjectTag); | 1199 return MemOperand(object, offset - kHeapObjectTag); |
| 1210 } | 1200 } |
| 1211 | 1201 |
| 1212 | 1202 |
| 1213 // Generate a MemOperand for storing arguments 5..N on the stack | 1203 // Generate a MemOperand for storing arguments 5..N on the stack |
| 1214 // when calling CallCFunction(). | 1204 // when calling CallCFunction(). |
| 1215 static inline MemOperand CFunctionArgumentOperand(int index) { | 1205 static inline MemOperand CFunctionArgumentOperand(int index) { |
| 1216 ASSERT(index > kCArgSlotCount); | 1206 ASSERT(index > StandardFrameConstants::kCArgSlotCount); |
| 1217 // Argument 5 takes the slot just past the four Arg-slots. | 1207 // Argument 5 takes the slot just past the four Arg-slots. |
| 1218 int offset = (index - 5) * kPointerSize + kCArgsSlotsSize; | 1208 int offset = |
| 1209 (index - 5) * kPointerSize + StandardFrameConstants::kCArgsSlotsSize; |
| 1219 return MemOperand(sp, offset); | 1210 return MemOperand(sp, offset); |
| 1220 } | 1211 } |
| 1221 | 1212 |
| 1222 | 1213 |
| 1223 #ifdef GENERATED_CODE_COVERAGE | 1214 #ifdef GENERATED_CODE_COVERAGE |
| 1224 #define CODE_COVERAGE_STRINGIFY(x) #x | 1215 #define CODE_COVERAGE_STRINGIFY(x) #x |
| 1225 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) | 1216 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) |
| 1226 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 1217 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |
| 1227 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 1218 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |
| 1228 #else | 1219 #else |
| 1229 #define ACCESS_MASM(masm) masm-> | 1220 #define ACCESS_MASM(masm) masm-> |
| 1230 #endif | 1221 #endif |
| 1231 | 1222 |
| 1232 } } // namespace v8::internal | 1223 } } // namespace v8::internal |
| 1233 | 1224 |
| 1234 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 1225 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
| OLD | NEW |