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 116 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
127 | 127 |
128 private: | 128 private: |
129 AssemblerBase* assembler_; | 129 AssemblerBase* assembler_; |
130 uint64_t old_enabled_; | 130 uint64_t old_enabled_; |
131 #else | 131 #else |
132 CpuFeatureScope(AssemblerBase* assembler, CpuFeature f) {} | 132 CpuFeatureScope(AssemblerBase* assembler, CpuFeature f) {} |
133 #endif | 133 #endif |
134 }; | 134 }; |
135 | 135 |
136 | 136 |
| 137 // Enable a unsupported feature within a scope for cross-compiling for a |
| 138 // different CPU. |
| 139 class PlatformFeatureScope BASE_EMBEDDED { |
| 140 public: |
| 141 explicit PlatformFeatureScope(CpuFeature f); |
| 142 ~PlatformFeatureScope(); |
| 143 |
| 144 private: |
| 145 uint64_t old_supported_; |
| 146 uint64_t old_found_by_runtime_probing_only_; |
| 147 }; |
| 148 |
| 149 |
137 // ----------------------------------------------------------------------------- | 150 // ----------------------------------------------------------------------------- |
138 // Labels represent pc locations; they are typically jump or call targets. | 151 // Labels represent pc locations; they are typically jump or call targets. |
139 // After declaration, a label can be freely used to denote known or (yet) | 152 // After declaration, a label can be freely used to denote known or (yet) |
140 // unknown pc location. Assembler::bind() is used to bind a label to the | 153 // unknown pc location. Assembler::bind() is used to bind a label to the |
141 // current pc. A label can be bound only once. | 154 // current pc. A label can be bound only once. |
142 | 155 |
143 class Label BASE_EMBEDDED { | 156 class Label BASE_EMBEDDED { |
144 public: | 157 public: |
145 enum Distance { | 158 enum Distance { |
146 kNear, kFar | 159 kNear, kFar |
(...skipping 909 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1056 public: | 1069 public: |
1057 NullCallWrapper() { } | 1070 NullCallWrapper() { } |
1058 virtual ~NullCallWrapper() { } | 1071 virtual ~NullCallWrapper() { } |
1059 virtual void BeforeCall(int call_size) const { } | 1072 virtual void BeforeCall(int call_size) const { } |
1060 virtual void AfterCall() const { } | 1073 virtual void AfterCall() const { } |
1061 }; | 1074 }; |
1062 | 1075 |
1063 } } // namespace v8::internal | 1076 } } // namespace v8::internal |
1064 | 1077 |
1065 #endif // V8_ASSEMBLER_H_ | 1078 #endif // V8_ASSEMBLER_H_ |
OLD | NEW |