5#ifndef V8_OBJECTS_ABSTRACT_CODE_INL_H_
6#define V8_OBJECTS_ABSTRACT_CODE_INL_H_
25 if (InstanceTypeChecker::IsCode(map_object)) {
26 return GetCode()->instruction_size();
28 DCHECK(InstanceTypeChecker::IsBytecodeArray(map_object));
29 return GetBytecodeArray()->length();
36 if (InstanceTypeChecker::IsCode(map_object)) {
37 return GetCode()->SourcePositionTable(isolate, sfi);
39 DCHECK(InstanceTypeChecker::IsBytecodeArray(map_object));
46 if (InstanceTypeChecker::IsCode(map_object)) {
47 return GetCode()->SizeIncludingMetadata();
49 DCHECK(InstanceTypeChecker::IsBytecodeArray(map_object));
56 if (InstanceTypeChecker::IsCode(map_object)) {
57 return GetCode()->instruction_start();
59 DCHECK(InstanceTypeChecker::IsBytecodeArray(map_object));
66 if (InstanceTypeChecker::IsCode(map_object)) {
67 return GetCode()->instruction_end();
69 DCHECK(InstanceTypeChecker::IsBytecodeArray(map_object));
71 return bytecode_array->GetFirstBytecodeAddress() + bytecode_array->length();
78 if (InstanceTypeChecker::IsCode(map_object)) {
79 return GetCode()->contains(isolate, inner_pointer);
81 DCHECK(InstanceTypeChecker::IsBytecodeArray(map_object));
82 return (
address() <= inner_pointer) &&
83 (inner_pointer <=
address() + Size(cage_base));
89 if (InstanceTypeChecker::IsCode(map_object)) {
92 DCHECK(InstanceTypeChecker::IsBytecodeArray(map_object));
93 return CodeKind::INTERPRETED_FUNCTION;
99 if (InstanceTypeChecker::IsCode(map_object)) {
100 return GetCode()->builtin_id();
102 DCHECK(InstanceTypeChecker::IsBytecodeArray(map_object));
108 DCHECK(InstanceTypeChecker::IsCode(
map(cage_base)));
109 return GetCode()->has_instruction_stream();
CodeKind kind(PtrComprCageBase cage_base)
Builtin builtin_id(PtrComprCageBase cage_base)
Address InstructionEnd(PtrComprCageBase cage_base)
bool contains(Isolate *isolate, Address pc)
Address InstructionStart(PtrComprCageBase cage_base)
Tagged< BytecodeArray > GetBytecodeArray()
bool has_instruction_stream(PtrComprCageBase cage_base)
Tagged< TrustedByteArray > SourcePositionTable(Isolate *isolate, Tagged< SharedFunctionInfo > sfi)
int SizeIncludingMetadata(PtrComprCageBase cage_base)
Tagged< To > Cast(Tagged< From > value, const v8::SourceLocation &loc=INIT_SOURCE_LOCATION_IN_DEBUG)
#define OBJECT_CONSTRUCTORS_IMPL(Type, Super)
#define DCHECK(condition)