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

Unified Diff: src/objects.h

Issue 2814050: Version 2.2.23... (Closed) Base URL: http://v8.googlecode.com/svn/trunk/
Patch Set: '' Created 10 years, 5 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/messages.js ('k') | src/objects.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/objects.h
===================================================================
--- src/objects.h (revision 5030)
+++ src/objects.h (working copy)
@@ -2736,9 +2736,13 @@
inline int instruction_size();
inline void set_instruction_size(int value);
- // [relocation_size]: Size of relocation information.
+ // [relocation_info]: Code relocation information
+ DECL_ACCESSORS(relocation_info, ByteArray)
+
+ // Unchecked accessor to be used during GC.
+ inline ByteArray* unchecked_relocation_info();
+
inline int relocation_size();
- inline void set_relocation_size(int value);
// [sinfo_size]: Size of scope information.
inline int sinfo_size();
@@ -2797,6 +2801,9 @@
// Returns the address of the first instruction.
inline byte* instruction_start();
+ // Returns the address right after the last instruction.
+ inline byte* instruction_end();
+
// Returns the size of the instructions, padding, and relocation information.
inline int body_size();
@@ -2857,8 +2864,8 @@
// Layout description.
static const int kInstructionSizeOffset = HeapObject::kHeaderSize;
- static const int kRelocationSizeOffset = kInstructionSizeOffset + kIntSize;
- static const int kSInfoSizeOffset = kRelocationSizeOffset + kIntSize;
+ static const int kRelocationInfoOffset = kInstructionSizeOffset + kIntSize;
+ static const int kSInfoSizeOffset = kRelocationInfoOffset + kPointerSize;
static const int kFlagsOffset = kSInfoSizeOffset + kIntSize;
static const int kKindSpecificFlagsOffset = kFlagsOffset + kIntSize;
// Add padding to align the instruction start following right after
@@ -4406,6 +4413,8 @@
// Each character in the AsciiString is an ascii character.
class SeqAsciiString: public SeqString {
public:
+ static const bool kHasAsciiEncoding = true;
+
// Dispatched behavior.
inline uint16_t SeqAsciiStringGet(int index);
inline void SeqAsciiStringSet(int index, uint16_t value);
@@ -4455,6 +4464,8 @@
// Each character in the TwoByteString is a two-byte uint16_t.
class SeqTwoByteString: public SeqString {
public:
+ static const bool kHasAsciiEncoding = false;
+
// Dispatched behavior.
inline uint16_t SeqTwoByteStringGet(int index);
inline void SeqTwoByteStringSet(int index, uint16_t value);
@@ -4587,6 +4598,8 @@
// ASCII string.
class ExternalAsciiString: public ExternalString {
public:
+ static const bool kHasAsciiEncoding = true;
+
typedef v8::String::ExternalAsciiStringResource Resource;
// The underlying resource.
@@ -4619,6 +4632,8 @@
// encoded string.
class ExternalTwoByteString: public ExternalString {
public:
+ static const bool kHasAsciiEncoding = false;
+
typedef v8::String::ExternalStringResource Resource;
// The underlying string resource.
« no previous file with comments | « src/messages.js ('k') | src/objects.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698