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 | 177 |
178 // Accessors | 178 // Accessors |
179 byte* pc() const { return pc_; } | 179 byte* pc() const { return pc_; } |
180 void set_pc(byte* pc) { pc_ = pc; } | 180 void set_pc(byte* pc) { pc_ = pc; } |
181 Mode rmode() const { return rmode_; } | 181 Mode rmode() const { return rmode_; } |
182 intptr_t data() const { return data_; } | 182 intptr_t data() const { return data_; } |
183 | 183 |
184 // Apply a relocation by delta bytes | 184 // Apply a relocation by delta bytes |
185 INLINE(void apply(intptr_t delta)); | 185 INLINE(void apply(intptr_t delta)); |
186 | 186 |
| 187 // Is the pointer this relocation info refers to coded like a plain pointer |
| 188 // or is it strange in some way (eg relative or patched into a series of |
| 189 // instructions). |
| 190 bool IsCodedSpecially(); |
| 191 |
187 // Read/modify the code target in the branch/call instruction | 192 // Read/modify the code target in the branch/call instruction |
188 // this relocation applies to; | 193 // this relocation applies to; |
189 // can only be called if IsCodeTarget(rmode_) || rmode_ == RUNTIME_ENTRY | 194 // can only be called if IsCodeTarget(rmode_) || rmode_ == RUNTIME_ENTRY |
190 INLINE(Address target_address()); | 195 INLINE(Address target_address()); |
191 INLINE(void set_target_address(Address target)); | 196 INLINE(void set_target_address(Address target)); |
192 INLINE(Object* target_object()); | 197 INLINE(Object* target_object()); |
193 INLINE(Handle<Object> target_object_handle(Assembler* origin)); | 198 INLINE(Handle<Object> target_object_handle(Assembler* origin)); |
194 INLINE(Object** target_object_address()); | 199 INLINE(Object** target_object_address()); |
195 INLINE(void set_target_object(Object* target)); | 200 INLINE(void set_target_object(Object* target)); |
196 | 201 |
(...skipping 337 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
534 unsigned int num_bits_set; | 539 unsigned int num_bits_set; |
535 for (num_bits_set = 0; x; x >>= 1) { | 540 for (num_bits_set = 0; x; x >>= 1) { |
536 num_bits_set += x & 1; | 541 num_bits_set += x & 1; |
537 } | 542 } |
538 return num_bits_set; | 543 return num_bits_set; |
539 } | 544 } |
540 | 545 |
541 } } // namespace v8::internal | 546 } } // namespace v8::internal |
542 | 547 |
543 #endif // V8_ASSEMBLER_H_ | 548 #endif // V8_ASSEMBLER_H_ |
OLD | NEW |