OLD | NEW |
1 // Copyright (c) 1994-2006 Sun Microsystems Inc. | 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. |
2 // All Rights Reserved. | 2 // All Rights Reserved. |
3 // | 3 // |
4 // Redistribution and use in source and binary forms, with or without | 4 // Redistribution and use in source and binary forms, with or without |
5 // modification, are permitted provided that the following conditions | 5 // modification, are permitted provided that the following conditions |
6 // are met: | 6 // are met: |
7 // | 7 // |
8 // - Redistributions of source code must retain the above copyright notice, | 8 // - Redistributions of source code must retain the above copyright notice, |
9 // this list of conditions and the following disclaimer. | 9 // this list of conditions and the following disclaimer. |
10 // | 10 // |
(...skipping 27 matching lines...) Expand all Loading... |
38 // Generates user mode instructions for the ARM architecture up to version 5 | 38 // Generates user mode instructions for the ARM architecture up to version 5 |
39 | 39 |
40 #ifndef V8_ARM_ASSEMBLER_ARM_H_ | 40 #ifndef V8_ARM_ASSEMBLER_ARM_H_ |
41 #define V8_ARM_ASSEMBLER_ARM_H_ | 41 #define V8_ARM_ASSEMBLER_ARM_H_ |
42 | 42 |
43 #include <stdio.h> | 43 #include <stdio.h> |
44 #include <vector> | 44 #include <vector> |
45 | 45 |
46 #include "src/arm/constants-arm.h" | 46 #include "src/arm/constants-arm.h" |
47 #include "src/assembler.h" | 47 #include "src/assembler.h" |
| 48 #include "src/compiler.h" |
48 #include "src/serialize.h" | 49 #include "src/serialize.h" |
49 | 50 |
50 namespace v8 { | 51 namespace v8 { |
51 namespace internal { | 52 namespace internal { |
52 | 53 |
53 // CPU Registers. | 54 // CPU Registers. |
54 // | 55 // |
55 // 1) We would prefer to use an enum, but enum values are assignment- | 56 // 1) We would prefer to use an enum, but enum values are assignment- |
56 // compatible with int, which has caused code-generation bugs. | 57 // compatible with int, which has caused code-generation bugs. |
57 // | 58 // |
(...skipping 1335 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1393 } | 1394 } |
1394 | 1395 |
1395 void ClearRecordedAstId() { recorded_ast_id_ = TypeFeedbackId::None(); } | 1396 void ClearRecordedAstId() { recorded_ast_id_ = TypeFeedbackId::None(); } |
1396 | 1397 |
1397 // Record a comment relocation entry that can be used by a disassembler. | 1398 // Record a comment relocation entry that can be used by a disassembler. |
1398 // Use --code-comments to enable. | 1399 // Use --code-comments to enable. |
1399 void RecordComment(const char* msg); | 1400 void RecordComment(const char* msg); |
1400 | 1401 |
1401 // Record a deoptimization reason that can be used by a log or cpu profiler. | 1402 // Record a deoptimization reason that can be used by a log or cpu profiler. |
1402 // Use --trace-deopt to enable. | 1403 // Use --trace-deopt to enable. |
1403 void RecordDeoptReason(const int reason, const int raw_position); | 1404 void RecordDeoptReason(const int reason, const SourcePosition position); |
1404 | 1405 |
1405 // Record the emission of a constant pool. | 1406 // Record the emission of a constant pool. |
1406 // | 1407 // |
1407 // The emission of constant pool depends on the size of the code generated and | 1408 // The emission of constant pool depends on the size of the code generated and |
1408 // the number of RelocInfo recorded. | 1409 // the number of RelocInfo recorded. |
1409 // The Debug mechanism needs to map code offsets between two versions of a | 1410 // The Debug mechanism needs to map code offsets between two versions of a |
1410 // function, compiled with and without debugger support (see for example | 1411 // function, compiled with and without debugger support (see for example |
1411 // Debug::PrepareForBreakPoints()). | 1412 // Debug::PrepareForBreakPoints()). |
1412 // Compiling functions with debugger support generates additional code | 1413 // Compiling functions with debugger support generates additional code |
1413 // (DebugCodegen::GenerateSlot()). This may affect the emission of the | 1414 // (DebugCodegen::GenerateSlot()). This may affect the emission of the |
(...skipping 267 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1681 public: | 1682 public: |
1682 explicit EnsureSpace(Assembler* assembler) { | 1683 explicit EnsureSpace(Assembler* assembler) { |
1683 assembler->CheckBuffer(); | 1684 assembler->CheckBuffer(); |
1684 } | 1685 } |
1685 }; | 1686 }; |
1686 | 1687 |
1687 | 1688 |
1688 } } // namespace v8::internal | 1689 } } // namespace v8::internal |
1689 | 1690 |
1690 #endif // V8_ARM_ASSEMBLER_ARM_H_ | 1691 #endif // V8_ARM_ASSEMBLER_ARM_H_ |
OLD | NEW |