Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(83)

Side by Side Diff: src/ppc/assembler-ppc-inl.h

Issue 1155673005: Fix issues with Arm's use of embedded constant pools (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Move DataAlign implementation to common code Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/ppc/assembler-ppc.cc ('k') | src/snapshot/serialize.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 5 // modification, are permitted provided that the following conditions
6 // are met: 6 // are 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 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 return Assembler::target_address_at(pc_, host_); 89 return Assembler::target_address_at(pc_, host_);
90 } 90 }
91 91
92 92
93 Address RelocInfo::target_address_address() { 93 Address RelocInfo::target_address_address() {
94 DCHECK(IsCodeTarget(rmode_) || IsRuntimeEntry(rmode_) || 94 DCHECK(IsCodeTarget(rmode_) || IsRuntimeEntry(rmode_) ||
95 rmode_ == EMBEDDED_OBJECT || rmode_ == EXTERNAL_REFERENCE); 95 rmode_ == EMBEDDED_OBJECT || rmode_ == EXTERNAL_REFERENCE);
96 96
97 if (FLAG_enable_embedded_constant_pool && 97 if (FLAG_enable_embedded_constant_pool &&
98 Assembler::IsConstantPoolLoadStart(pc_)) { 98 Assembler::IsConstantPoolLoadStart(pc_)) {
99 // We return the PC for ool constant pool since this function is used by the 99 // We return the PC for embedded constant pool since this function is used
100 // serializer and expects the address to reside within the code object. 100 // by the serializer and expects the address to reside within the code
101 // object.
101 return reinterpret_cast<Address>(pc_); 102 return reinterpret_cast<Address>(pc_);
102 } 103 }
103 104
104 // Read the address of the word containing the target_address in an 105 // Read the address of the word containing the target_address in an
105 // instruction stream. 106 // instruction stream.
106 // The only architecture-independent user of this function is the serializer. 107 // The only architecture-independent user of this function is the serializer.
107 // The serializer uses it to find out how many raw bytes of instruction to 108 // The serializer uses it to find out how many raw bytes of instruction to
108 // output before the next target. 109 // output before the next target.
109 // For an instruction like LIS/ORI where the target bits are mixed into the 110 // For an instruction like LIS/ORI where the target bits are mixed into the
110 // instruction bits, the size of the target will be zero, indicating that the 111 // instruction bits, the size of the target will be zero, indicating that the
(...skipping 609 matching lines...) Expand 10 before | Expand all | Expand 10 after
720 } 721 }
721 #endif 722 #endif
722 return; 723 return;
723 } 724 }
724 UNREACHABLE(); 725 UNREACHABLE();
725 } 726 }
726 } 727 }
727 } // namespace v8::internal 728 } // namespace v8::internal
728 729
729 #endif // V8_PPC_ASSEMBLER_PPC_INL_H_ 730 #endif // V8_PPC_ASSEMBLER_PPC_INL_H_
OLDNEW
« no previous file with comments | « src/ppc/assembler-ppc.cc ('k') | src/snapshot/serialize.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698