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 are | 5 // modification, are permitted provided that the following conditions are |
6 // met: | 6 // 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 22 matching lines...) Expand all Loading... |
33 // Copyright 2011 the V8 project authors. All rights reserved. | 33 // Copyright 2011 the V8 project authors. All rights reserved. |
34 | 34 |
35 // A light-weight IA32 Assembler. | 35 // A light-weight IA32 Assembler. |
36 | 36 |
37 #ifndef V8_X87_ASSEMBLER_X87_H_ | 37 #ifndef V8_X87_ASSEMBLER_X87_H_ |
38 #define V8_X87_ASSEMBLER_X87_H_ | 38 #define V8_X87_ASSEMBLER_X87_H_ |
39 | 39 |
40 #include <deque> | 40 #include <deque> |
41 | 41 |
42 #include "src/assembler.h" | 42 #include "src/assembler.h" |
| 43 #include "src/compiler.h" |
43 #include "src/isolate.h" | 44 #include "src/isolate.h" |
44 #include "src/serialize.h" | 45 #include "src/serialize.h" |
45 | 46 |
46 namespace v8 { | 47 namespace v8 { |
47 namespace internal { | 48 namespace internal { |
48 | 49 |
49 // CPU Registers. | 50 // CPU Registers. |
50 // | 51 // |
51 // 1) We would prefer to use an enum, but enum values are assignment- | 52 // 1) We would prefer to use an enum, but enum values are assignment- |
52 // compatible with int, which has caused code-generation bugs. | 53 // compatible with int, which has caused code-generation bugs. |
(...skipping 881 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
934 | 935 |
935 // Mark address of a debug break slot. | 936 // Mark address of a debug break slot. |
936 void RecordDebugBreakSlot(); | 937 void RecordDebugBreakSlot(); |
937 | 938 |
938 // Record a comment relocation entry that can be used by a disassembler. | 939 // Record a comment relocation entry that can be used by a disassembler. |
939 // Use --code-comments to enable. | 940 // Use --code-comments to enable. |
940 void RecordComment(const char* msg); | 941 void RecordComment(const char* msg); |
941 | 942 |
942 // Record a deoptimization reason that can be used by a log or cpu profiler. | 943 // Record a deoptimization reason that can be used by a log or cpu profiler. |
943 // Use --trace-deopt to enable. | 944 // Use --trace-deopt to enable. |
944 void RecordDeoptReason(const int reason, const int raw_position); | 945 void RecordDeoptReason(const int reason, const SourcePosition position); |
945 | 946 |
946 // Writes a single byte or word of data in the code stream. Used for | 947 // Writes a single byte or word of data in the code stream. Used for |
947 // inline tables, e.g., jump-tables. | 948 // inline tables, e.g., jump-tables. |
948 void db(uint8_t data); | 949 void db(uint8_t data); |
949 void dd(uint32_t data); | 950 void dd(uint32_t data); |
950 void dd(Label* label); | 951 void dd(Label* label); |
951 | 952 |
952 // Check if there is less than kGap bytes available in the buffer. | 953 // Check if there is less than kGap bytes available in the buffer. |
953 // If this is the case, we need to grow the buffer before emitting | 954 // If this is the case, we need to grow the buffer before emitting |
954 // an instruction or relocation information. | 955 // an instruction or relocation information. |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1074 private: | 1075 private: |
1075 Assembler* assembler_; | 1076 Assembler* assembler_; |
1076 #ifdef DEBUG | 1077 #ifdef DEBUG |
1077 int space_before_; | 1078 int space_before_; |
1078 #endif | 1079 #endif |
1079 }; | 1080 }; |
1080 | 1081 |
1081 } } // namespace v8::internal | 1082 } } // namespace v8::internal |
1082 | 1083 |
1083 #endif // V8_X87_ASSEMBLER_X87_H_ | 1084 #endif // V8_X87_ASSEMBLER_X87_H_ |
OLD | NEW |