| 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 7159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7170 | 7170 |
| 7171 // Foreign describes objects pointing from JavaScript to C structures. | 7171 // Foreign describes objects pointing from JavaScript to C structures. |
| 7172 // Since they cannot contain references to JS HeapObjects they can be | 7172 // Since they cannot contain references to JS HeapObjects they can be |
| 7173 // placed in old_data_space. | 7173 // placed in old_data_space. |
| 7174 class Foreign: public HeapObject { | 7174 class Foreign: public HeapObject { |
| 7175 public: | 7175 public: |
| 7176 // [address]: field containing the address. | 7176 // [address]: field containing the address. |
| 7177 inline Address foreign_address(); | 7177 inline Address foreign_address(); |
| 7178 inline void set_foreign_address(Address value); | 7178 inline void set_foreign_address(Address value); |
| 7179 | 7179 |
| 7180 Address address() { OS::DebugBreak(); return NULL; } | |
| 7181 | |
| 7182 // Casting. | 7180 // Casting. |
| 7183 static inline Foreign* cast(Object* obj); | 7181 static inline Foreign* cast(Object* obj); |
| 7184 | 7182 |
| 7185 // Dispatched behavior. | 7183 // Dispatched behavior. |
| 7186 inline void ForeignIterateBody(ObjectVisitor* v); | 7184 inline void ForeignIterateBody(ObjectVisitor* v); |
| 7187 | 7185 |
| 7188 template<typename StaticVisitor> | 7186 template<typename StaticVisitor> |
| 7189 inline void ForeignIterateBody(); | 7187 inline void ForeignIterateBody(); |
| 7190 | 7188 |
| 7191 #ifdef OBJECT_PRINT | 7189 #ifdef OBJECT_PRINT |
| (...skipping 616 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7808 } else { | 7806 } else { |
| 7809 value &= ~(1 << bit_position); | 7807 value &= ~(1 << bit_position); |
| 7810 } | 7808 } |
| 7811 return value; | 7809 return value; |
| 7812 } | 7810 } |
| 7813 }; | 7811 }; |
| 7814 | 7812 |
| 7815 } } // namespace v8::internal | 7813 } } // namespace v8::internal |
| 7816 | 7814 |
| 7817 #endif // V8_OBJECTS_H_ | 7815 #endif // V8_OBJECTS_H_ |
| OLD | NEW |