| 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 166 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 177 // invalid/uninitialized position value. | 177 // invalid/uninitialized position value. |
| 178 static const int kNoPosition = -1; | 178 static const int kNoPosition = -1; |
| 179 | 179 |
| 180 enum Mode { | 180 enum Mode { |
| 181 // Please note the order is important (see IsCodeTarget, IsGCRelocMode). | 181 // Please note the order is important (see IsCodeTarget, IsGCRelocMode). |
| 182 CONSTRUCT_CALL, // code target that is a call to a JavaScript constructor. | 182 CONSTRUCT_CALL, // code target that is a call to a JavaScript constructor. |
| 183 CODE_TARGET_CONTEXT, // Code target used for contextual loads. | 183 CODE_TARGET_CONTEXT, // Code target used for contextual loads. |
| 184 DEBUG_BREAK, // Code target for the debugger statement. | 184 DEBUG_BREAK, // Code target for the debugger statement. |
| 185 CODE_TARGET, // Code target which is not any of the above. | 185 CODE_TARGET, // Code target which is not any of the above. |
| 186 EMBEDDED_OBJECT, | 186 EMBEDDED_OBJECT, |
| 187 | |
| 188 GLOBAL_PROPERTY_CELL, | 187 GLOBAL_PROPERTY_CELL, |
| 189 | 188 |
| 190 // Everything after runtime_entry (inclusive) is not GC'ed. | 189 // Everything after runtime_entry (inclusive) is not GC'ed. |
| 191 RUNTIME_ENTRY, | 190 RUNTIME_ENTRY, |
| 192 JS_RETURN, // Marks start of the ExitJSFrame code. | 191 JS_RETURN, // Marks start of the ExitJSFrame code. |
| 193 COMMENT, | 192 COMMENT, |
| 194 POSITION, // See comment for kNoPosition above. | 193 POSITION, // See comment for kNoPosition above. |
| 195 STATEMENT_POSITION, // See comment for kNoPosition above. | 194 STATEMENT_POSITION, // See comment for kNoPosition above. |
| 196 DEBUG_BREAK_SLOT, // Additional code inserted for debug break slot. | 195 DEBUG_BREAK_SLOT, // Additional code inserted for debug break slot. |
| 197 EXTERNAL_REFERENCE, // The address of an external C++ function. | 196 EXTERNAL_REFERENCE, // The address of an external C++ function. |
| 198 INTERNAL_REFERENCE, // An address inside the same function. | 197 INTERNAL_REFERENCE, // An address inside the same function. |
| 199 | 198 |
| 200 // add more as needed | 199 // add more as needed |
| 201 // Pseudo-types | 200 // Pseudo-types |
| 202 NUMBER_OF_MODES, // must be no greater than 14 - see RelocInfoWriter | 201 NUMBER_OF_MODES, // must be no greater than 14 - see RelocInfoWriter |
| 203 NONE, // never recorded | 202 NONE, // never recorded |
| 204 LAST_CODE_ENUM = CODE_TARGET, | 203 LAST_CODE_ENUM = CODE_TARGET, |
| 205 LAST_GCED_ENUM = EMBEDDED_OBJECT | 204 LAST_GCED_ENUM = GLOBAL_PROPERTY_CELL |
| 206 }; | 205 }; |
| 207 | 206 |
| 208 | 207 |
| 209 RelocInfo() {} | 208 RelocInfo() {} |
| 210 RelocInfo(byte* pc, Mode rmode, intptr_t data) | 209 RelocInfo(byte* pc, Mode rmode, intptr_t data) |
| 211 : pc_(pc), rmode_(rmode), data_(data) { | 210 : pc_(pc), rmode_(rmode), data_(data) { |
| 212 } | 211 } |
| 213 | 212 |
| 214 static inline bool IsConstructCall(Mode mode) { | 213 static inline bool IsConstructCall(Mode mode) { |
| 215 return mode == CONSTRUCT_CALL; | 214 return mode == CONSTRUCT_CALL; |
| (...skipping 531 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 747 return num_bits_set; | 746 return num_bits_set; |
| 748 } | 747 } |
| 749 | 748 |
| 750 // Computes pow(x, y) with the special cases in the spec for Math.pow. | 749 // Computes pow(x, y) with the special cases in the spec for Math.pow. |
| 751 double power_double_int(double x, int y); | 750 double power_double_int(double x, int y); |
| 752 double power_double_double(double x, double y); | 751 double power_double_double(double x, double y); |
| 753 | 752 |
| 754 } } // namespace v8::internal | 753 } } // namespace v8::internal |
| 755 | 754 |
| 756 #endif // V8_ASSEMBLER_H_ | 755 #endif // V8_ASSEMBLER_H_ |
| OLD | NEW |