Commit 0e451074 authored by Milad Fa's avatar Milad Fa Committed by V8 LUCI CQ

PPC/s390: [masm] Read builtin off builtin_entry_table rather than EmbeddedData...

Port c7949470

Original Commit Message:

    ... when we do have an isolate. This is a little leaner.

R=verwaest@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com
BUG=
LOG=N

Change-Id: Ifd466b48f4f7a909d00fc32304f90ebd19e93110
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2965156Reviewed-by: 's avatarJunliang Yan <junyan@redhat.com>
Commit-Queue: Milad Fa <mfarazma@redhat.com>
Cr-Commit-Position: refs/heads/master@{#75192}
parent af7ae788
...@@ -195,7 +195,7 @@ void TurboAssembler::Jump(Handle<Code> code, RelocInfo::Mode rmode, ...@@ -195,7 +195,7 @@ void TurboAssembler::Jump(Handle<Code> code, RelocInfo::Mode rmode,
RecordCommentForOffHeapTrampoline(builtin_index); RecordCommentForOffHeapTrampoline(builtin_index);
// Use ip directly instead of using UseScratchRegisterScope, as we do // Use ip directly instead of using UseScratchRegisterScope, as we do
// not preserve scratch registers across calls. // not preserve scratch registers across calls.
mov(ip, Operand(BuiltinEntry(builtin), RelocInfo::OFF_HEAP_TARGET)); mov(ip, Operand(BuiltinEntry(builtin_index), RelocInfo::OFF_HEAP_TARGET));
if (cond != al) b(NegateCondition(cond), &skip, cr); if (cond != al) b(NegateCondition(cond), &skip, cr);
Jump(ip); Jump(ip);
bind(&skip); bind(&skip);
...@@ -280,7 +280,7 @@ void TurboAssembler::Call(Handle<Code> code, RelocInfo::Mode rmode, ...@@ -280,7 +280,7 @@ void TurboAssembler::Call(Handle<Code> code, RelocInfo::Mode rmode,
RecordCommentForOffHeapTrampoline(builtin_index); RecordCommentForOffHeapTrampoline(builtin_index);
// Use ip directly instead of using UseScratchRegisterScope, as we do // Use ip directly instead of using UseScratchRegisterScope, as we do
// not preserve scratch registers across calls. // not preserve scratch registers across calls.
mov(ip, Operand(BuiltinEntry(builtin), RelocInfo::OFF_HEAP_TARGET)); mov(ip, Operand(BuiltinEntry(builtin_index), RelocInfo::OFF_HEAP_TARGET));
Label skip; Label skip;
if (cond != al) b(NegateCondition(cond), &skip); if (cond != al) b(NegateCondition(cond), &skip);
Call(ip); Call(ip);
...@@ -760,7 +760,7 @@ void TurboAssembler::CallRecordWriteStub( ...@@ -760,7 +760,7 @@ void TurboAssembler::CallRecordWriteStub(
RecordCommentForOffHeapTrampoline(builtin_index); RecordCommentForOffHeapTrampoline(builtin_index);
// Use ip directly instead of using UseScratchRegisterScope, as we do // Use ip directly instead of using UseScratchRegisterScope, as we do
// not preserve scratch registers across calls. // not preserve scratch registers across calls.
mov(ip, Operand(BuiltinEntry(builtin), RelocInfo::OFF_HEAP_TARGET)); mov(ip, Operand(BuiltinEntry(builtin_index), RelocInfo::OFF_HEAP_TARGET));
Call(ip); Call(ip);
} else { } else {
Handle<Code> code_target = Handle<Code> code_target =
......
...@@ -407,7 +407,7 @@ void TurboAssembler::Jump(Handle<Code> code, RelocInfo::Mode rmode, ...@@ -407,7 +407,7 @@ void TurboAssembler::Jump(Handle<Code> code, RelocInfo::Mode rmode,
if (options().inline_offheap_trampolines && target_is_builtin) { if (options().inline_offheap_trampolines && target_is_builtin) {
// Inline the trampoline. // Inline the trampoline.
RecordCommentForOffHeapTrampoline(builtin_index); RecordCommentForOffHeapTrampoline(builtin_index);
mov(ip, Operand(BuiltinEntry(builtin), RelocInfo::OFF_HEAP_TARGET)); mov(ip, Operand(BuiltinEntry(builtin_index), RelocInfo::OFF_HEAP_TARGET));
b(cond, ip); b(cond, ip);
return; return;
} }
...@@ -465,7 +465,7 @@ void TurboAssembler::Call(Handle<Code> code, RelocInfo::Mode rmode, ...@@ -465,7 +465,7 @@ void TurboAssembler::Call(Handle<Code> code, RelocInfo::Mode rmode,
if (target_is_builtin && options().inline_offheap_trampolines) { if (target_is_builtin && options().inline_offheap_trampolines) {
// Inline the trampoline. // Inline the trampoline.
RecordCommentForOffHeapTrampoline(builtin_index); RecordCommentForOffHeapTrampoline(builtin_index);
mov(ip, Operand(BuiltinEntry(builtin), RelocInfo::OFF_HEAP_TARGET)); mov(ip, Operand(BuiltinEntry(builtin_index), RelocInfo::OFF_HEAP_TARGET));
Call(ip); Call(ip);
return; return;
} }
...@@ -982,7 +982,7 @@ void TurboAssembler::CallRecordWriteStub( ...@@ -982,7 +982,7 @@ void TurboAssembler::CallRecordWriteStub(
Builtins::GetRecordWriteStub(remembered_set_action, fp_mode); Builtins::GetRecordWriteStub(remembered_set_action, fp_mode);
if (options().inline_offheap_trampolines) { if (options().inline_offheap_trampolines) {
RecordCommentForOffHeapTrampoline(builtin_index); RecordCommentForOffHeapTrampoline(builtin_index);
mov(ip, Operand(BuiltinEntry(builtin), RelocInfo::OFF_HEAP_TARGET)); mov(ip, Operand(BuiltinEntry(builtin_index), RelocInfo::OFF_HEAP_TARGET));
Call(ip); Call(ip);
} else { } else {
Handle<Code> code_target = Handle<Code> code_target =
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment