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

Unified Diff: src/a64/code-stubs-a64.cc

Issue 204293004: A64: Remove Operand constructors where an implicit constructor can be used. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 9 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/a64/builtins-a64.cc ('k') | src/a64/codegen-a64.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/a64/code-stubs-a64.cc
diff --git a/src/a64/code-stubs-a64.cc b/src/a64/code-stubs-a64.cc
index 5cd39747fe09ccf78b12b41f834ef9f2839991ce..3fd06157872f968c3012d0376d2e76f5cfd73b7a 100644
--- a/src/a64/code-stubs-a64.cc
+++ b/src/a64/code-stubs-a64.cc
@@ -1080,7 +1080,7 @@ void ICCompareStub::GenerateGeneric(MacroAssembler* masm) {
ASSERT((cond == gt) || (cond == ge)); // remaining cases
ncr = LESS;
}
- __ Mov(x10, Operand(Smi::FromInt(ncr)));
+ __ Mov(x10, Smi::FromInt(ncr));
__ Push(x10);
}
@@ -1111,7 +1111,7 @@ void StoreBufferOverflowStub::Generate(MacroAssembler* masm) {
}
AllowExternalCallThatCantCauseGC scope(masm);
- __ Mov(x0, Operand(ExternalReference::isolate_address(masm->isolate())));
+ __ Mov(x0, ExternalReference::isolate_address(masm->isolate()));
__ CallCFunction(
ExternalReference::store_buffer_overflow_function(masm->isolate()),
1, 0);
@@ -1490,7 +1490,7 @@ void CEntryStub::GenerateCore(MacroAssembler* masm,
if (do_gc) {
// Call Runtime::PerformGC, passing x0 (the result parameter for
// PerformGC) and x1 (the isolate).
- __ Mov(x1, Operand(ExternalReference::isolate_address(masm->isolate())));
+ __ Mov(x1, ExternalReference::isolate_address(masm->isolate()));
__ CallCFunction(
ExternalReference::perform_gc_function(isolate), 2, 0);
}
@@ -1507,7 +1507,7 @@ void CEntryStub::GenerateCore(MacroAssembler* masm,
// Prepare AAPCS64 arguments to pass to the builtin.
__ Mov(x0, argc);
__ Mov(x1, argv);
- __ Mov(x2, Operand(ExternalReference::isolate_address(isolate)));
+ __ Mov(x2, ExternalReference::isolate_address(isolate));
// Store the return address on the stack, in the space previously allocated
// by EnterExitFrame. The return address is queried by
@@ -1820,8 +1820,8 @@ void JSEntryStub::GenerateBody(MacroAssembler* masm, bool is_construct) {
int marker = is_construct ? StackFrame::ENTRY_CONSTRUCT : StackFrame::ENTRY;
int64_t bad_frame_pointer = -1L; // Bad frame pointer to fail if it is used.
__ Mov(x13, bad_frame_pointer);
- __ Mov(x12, Operand(Smi::FromInt(marker)));
- __ Mov(x11, Operand(ExternalReference(Isolate::kCEntryFPAddress, isolate)));
+ __ Mov(x12, Smi::FromInt(marker));
+ __ Mov(x11, ExternalReference(Isolate::kCEntryFPAddress, isolate));
__ Ldr(x10, MemOperand(x11));
__ Push(x13, xzr, x12, x10);
@@ -1832,11 +1832,11 @@ void JSEntryStub::GenerateBody(MacroAssembler* masm, bool is_construct) {
// outermost JS call.
Label non_outermost_js, done;
ExternalReference js_entry_sp(Isolate::kJSEntrySPAddress, isolate);
- __ Mov(x10, Operand(ExternalReference(js_entry_sp)));
+ __ Mov(x10, ExternalReference(js_entry_sp));
__ Ldr(x11, MemOperand(x10));
__ Cbnz(x11, &non_outermost_js);
__ Str(fp, MemOperand(x10));
- __ Mov(x12, Operand(Smi::FromInt(StackFrame::OUTERMOST_JSENTRY_FRAME)));
+ __ Mov(x12, Smi::FromInt(StackFrame::OUTERMOST_JSENTRY_FRAME));
__ Push(x12);
__ B(&done);
__ Bind(&non_outermost_js);
@@ -1905,7 +1905,7 @@ void JSEntryStub::GenerateBody(MacroAssembler* masm, bool is_construct) {
ExternalReference entry(is_construct ? Builtins::kJSConstructEntryTrampoline
: Builtins::kJSEntryTrampoline,
isolate);
- __ Mov(x10, Operand(entry));
+ __ Mov(x10, entry);
// Call the JSEntryTrampoline.
__ Ldr(x11, MemOperand(x10)); // Dereference the address.
@@ -1929,15 +1929,15 @@ void JSEntryStub::GenerateBody(MacroAssembler* masm, bool is_construct) {
// Check if the current stack frame is marked as the outermost JS frame.
Label non_outermost_js_2;
__ Pop(x10);
- __ Cmp(x10, Operand(Smi::FromInt(StackFrame::OUTERMOST_JSENTRY_FRAME)));
+ __ Cmp(x10, Smi::FromInt(StackFrame::OUTERMOST_JSENTRY_FRAME));
__ B(ne, &non_outermost_js_2);
- __ Mov(x11, Operand(ExternalReference(js_entry_sp)));
+ __ Mov(x11, ExternalReference(js_entry_sp));
__ Str(xzr, MemOperand(x11));
__ Bind(&non_outermost_js_2);
// Restore the top frame descriptors from the stack.
__ Pop(x10);
- __ Mov(x11, Operand(ExternalReference(Isolate::kCEntryFPAddress, isolate)));
+ __ Mov(x11, ExternalReference(Isolate::kCEntryFPAddress, isolate));
__ Str(x10, MemOperand(x11));
// Reset the stack to the callee saved registers.
@@ -2017,8 +2017,8 @@ void InstanceofStub::Generate(MacroAssembler* masm) {
__ LoadTrueFalseRoots(res_true, res_false);
} else {
// This is counter-intuitive, but correct.
- __ Mov(res_true, Operand(Smi::FromInt(0)));
- __ Mov(res_false, Operand(Smi::FromInt(1)));
+ __ Mov(res_true, Smi::FromInt(0));
+ __ Mov(res_false, Smi::FromInt(1));
}
// Check that the left hand side is a JS object and load its map as a side
@@ -2188,7 +2188,7 @@ void ArgumentsAccessStub::GenerateReadElement(MacroAssembler* masm) {
__ Ldr(caller_fp, MemOperand(fp, StandardFrameConstants::kCallerFPOffset));
__ Ldr(caller_ctx, MemOperand(caller_fp,
StandardFrameConstants::kContextOffset));
- __ Cmp(caller_ctx, Operand(Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR)));
+ __ Cmp(caller_ctx, Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
__ Csel(local_fp, fp, caller_fp, ne);
__ B(ne, &skip_adaptor);
@@ -2238,7 +2238,7 @@ void ArgumentsAccessStub::GenerateNewSloppySlow(MacroAssembler* masm) {
ArgumentsAdaptorFrameConstants::kLengthOffset));
__ Poke(x11, 0 * kXRegSize);
__ Add(x10, caller_fp, Operand::UntagSmiAndScale(x11, kPointerSizeLog2));
- __ Add(x10, x10, Operand(StandardFrameConstants::kCallerSPOffset));
+ __ Add(x10, x10, StandardFrameConstants::kCallerSPOffset);
__ Poke(x10, 1 * kXRegSize);
__ Bind(&runtime);
@@ -2271,7 +2271,7 @@ void ArgumentsAccessStub::GenerateNewSloppyFast(MacroAssembler* masm) {
__ Ldr(caller_fp, MemOperand(fp, StandardFrameConstants::kCallerFPOffset));
__ Ldr(caller_ctx, MemOperand(caller_fp,
StandardFrameConstants::kContextOffset));
- __ Cmp(caller_ctx, Operand(Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR)));
+ __ Cmp(caller_ctx, Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
__ B(eq, &adaptor_frame);
// No adaptor, parameter count = argument count.
@@ -2473,7 +2473,7 @@ void ArgumentsAccessStub::GenerateNewSloppyFast(MacroAssembler* masm) {
__ Str(index, MemOperand(elements, x10));
__ Sub(x10, x10, kParameterMapHeaderSize - FixedArray::kHeaderSize);
__ Str(the_hole, MemOperand(backing_store, x10));
- __ Add(index, index, Operand(Smi::FromInt(1)));
+ __ Add(index, index, Smi::FromInt(1));
__ Bind(&parameters_test);
__ Cbnz(loop_count, &parameters_loop);
@@ -2542,7 +2542,7 @@ void ArgumentsAccessStub::GenerateNewStrict(MacroAssembler* masm) {
__ Ldr(caller_fp, MemOperand(fp, StandardFrameConstants::kCallerFPOffset));
__ Ldr(caller_ctx, MemOperand(caller_fp,
StandardFrameConstants::kContextOffset));
- __ Cmp(caller_ctx, Operand(Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR)));
+ __ Cmp(caller_ctx, Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
__ B(ne, &try_allocate);
// x1 param_count_smi number of parameters passed to function (smi)
@@ -2728,7 +2728,7 @@ void RegExpExecStub::Generate(MacroAssembler* masm) {
ExternalReference::address_of_regexp_stack_memory_address(isolate);
ExternalReference address_of_regexp_stack_memory_size =
ExternalReference::address_of_regexp_stack_memory_size(isolate);
- __ Mov(x10, Operand(address_of_regexp_stack_memory_size));
+ __ Mov(x10, address_of_regexp_stack_memory_size);
__ Ldr(x10, MemOperand(x10));
__ Cbz(x10, &runtime);
@@ -2750,7 +2750,7 @@ void RegExpExecStub::Generate(MacroAssembler* masm) {
// Check the type of the RegExp. Only continue if type is JSRegExp::IRREGEXP.
__ Ldr(x10, FieldMemOperand(regexp_data, JSRegExp::kDataTagOffset));
- __ Cmp(x10, Operand(Smi::FromInt(JSRegExp::IRREGEXP)));
+ __ Cmp(x10, Smi::FromInt(JSRegExp::IRREGEXP));
__ B(ne, &runtime);
// Check that the number of captures fit in the static offsets vector buffer.
@@ -2905,7 +2905,7 @@ void RegExpExecStub::Generate(MacroAssembler* masm) {
// csp[0]: Space for the return address placed by DirectCEntryStub.
// csp[8]: Argument 9, the current isolate address.
- __ Mov(x10, Operand(ExternalReference::isolate_address(isolate)));
+ __ Mov(x10, ExternalReference::isolate_address(isolate));
__ Poke(x10, kPointerSize);
Register length = w11;
@@ -2954,8 +2954,7 @@ void RegExpExecStub::Generate(MacroAssembler* masm) {
__ Add(x3, x2, Operand(w10, UXTW));
// Argument 5 (x4): static offsets vector buffer.
- __ Mov(x4,
- Operand(ExternalReference::address_of_static_offsets_vector(isolate)));
+ __ Mov(x4, ExternalReference::address_of_static_offsets_vector(isolate));
// Argument 6 (x5): Set the number of capture registers to zero to force
// global regexps to behave as non-global. This stub is not used for global
@@ -2963,9 +2962,9 @@ void RegExpExecStub::Generate(MacroAssembler* masm) {
__ Mov(x5, 0);
// Argument 7 (x6): Start (high end) of backtracking stack memory area.
- __ Mov(x10, Operand(address_of_regexp_stack_memory_address));
+ __ Mov(x10, address_of_regexp_stack_memory_address);
__ Ldr(x10, MemOperand(x10));
- __ Mov(x11, Operand(address_of_regexp_stack_memory_size));
+ __ Mov(x11, address_of_regexp_stack_memory_size);
__ Ldr(x11, MemOperand(x11));
__ Add(x6, x10, x11);
@@ -3061,7 +3060,7 @@ void RegExpExecStub::Generate(MacroAssembler* masm) {
// and fill the last match info.
ExternalReference address_of_static_offsets_vector =
ExternalReference::address_of_static_offsets_vector(isolate);
- __ Mov(offsets_vector_index, Operand(address_of_static_offsets_vector));
+ __ Mov(offsets_vector_index, address_of_static_offsets_vector);
Label next_capture, done;
// Capture register counter starts from number of capture registers and
@@ -3556,7 +3555,7 @@ void StringCharCodeAtGenerator::GenerateSlow(
void StringCharFromCodeGenerator::GenerateFast(MacroAssembler* masm) {
__ JumpIfNotSmi(code_, &slow_case_);
- __ Cmp(code_, Operand(Smi::FromInt(String::kMaxOneByteCharCode)));
+ __ Cmp(code_, Smi::FromInt(String::kMaxOneByteCharCode));
__ B(hi, &slow_case_);
__ LoadRoot(result_, Heap::kSingleCharacterStringCacheRootIndex);
@@ -3906,7 +3905,7 @@ void ICCompareStub::GenerateMiss(MacroAssembler* masm) {
// Preserve some caller-saved registers.
__ Push(x1, x0, lr);
// Push the arguments.
- __ Mov(op, Operand(Smi::FromInt(op_)));
+ __ Mov(op, Smi::FromInt(op_));
__ Push(left, right, op);
// Call the miss handler. This also pops the arguments.
@@ -4255,7 +4254,7 @@ void StringCompareStub::GenerateFlatAsciiStringEquals(MacroAssembler* masm,
__ B(eq, &check_zero_length);
__ Bind(&strings_not_equal);
- __ Mov(result, Operand(Smi::FromInt(NOT_EQUAL)));
+ __ Mov(result, Smi::FromInt(NOT_EQUAL));
__ Ret();
// Check if the length is zero. If so, the strings must be equal (and empty.)
@@ -4263,7 +4262,7 @@ void StringCompareStub::GenerateFlatAsciiStringEquals(MacroAssembler* masm,
__ Bind(&check_zero_length);
STATIC_ASSERT(kSmiTag == 0);
__ Cbnz(left_length, &compare_chars);
- __ Mov(result, Operand(Smi::FromInt(EQUAL)));
+ __ Mov(result, Smi::FromInt(EQUAL));
__ Ret();
// Compare characters. Falls through if all characters are equal.
@@ -4272,7 +4271,7 @@ void StringCompareStub::GenerateFlatAsciiStringEquals(MacroAssembler* masm,
scratch3, &strings_not_equal);
// Characters in strings are equal.
- __ Mov(result, Operand(Smi::FromInt(EQUAL)));
+ __ Mov(result, Smi::FromInt(EQUAL));
__ Ret();
}
@@ -4314,8 +4313,8 @@ void StringCompareStub::GenerateCompareFlatAsciiStrings(MacroAssembler* masm,
__ Bind(&result_not_equal);
Register greater = x10;
Register less = x11;
- __ Mov(greater, Operand(Smi::FromInt(GREATER)));
- __ Mov(less, Operand(Smi::FromInt(LESS)));
+ __ Mov(greater, Smi::FromInt(GREATER));
+ __ Mov(less, Smi::FromInt(LESS));
__ CmovX(result, greater, gt);
__ CmovX(result, less, lt);
__ Ret();
@@ -4441,7 +4440,7 @@ void ArrayPushStub::Generate(MacroAssembler* masm) {
// Get the array's length and calculate new length.
__ Ldr(length, FieldMemOperand(receiver, JSArray::kLengthOffset));
STATIC_ASSERT(kSmiTag == 0);
- __ Add(length, length, Operand(Smi::FromInt(argc)));
+ __ Add(length, length, Smi::FromInt(argc));
// Check if we could survive without allocation.
__ Ldr(elements_length,
@@ -4568,12 +4567,12 @@ void ArrayPushStub::Generate(MacroAssembler* masm) {
__ Add(end_elements, elements,
Operand::UntagSmiAndScale(length, kPointerSizeLog2));
__ Add(end_elements, end_elements, kEndElementsOffset);
- __ Mov(allocation_top_addr, Operand(new_space_allocation_top));
+ __ Mov(allocation_top_addr, new_space_allocation_top);
__ Ldr(allocation_top, MemOperand(allocation_top_addr));
__ Cmp(end_elements, allocation_top);
__ B(ne, &call_builtin);
- __ Mov(x10, Operand(new_space_allocation_limit));
+ __ Mov(x10, new_space_allocation_limit);
__ Ldr(x10, MemOperand(x10));
__ Add(allocation_top, allocation_top, kAllocationDelta * kPointerSize);
__ Cmp(allocation_top, x10);
@@ -4592,9 +4591,7 @@ void ArrayPushStub::Generate(MacroAssembler* masm) {
// Update elements' and array's sizes.
__ Str(length, FieldMemOperand(receiver, JSArray::kLengthOffset));
- __ Add(elements_length,
- elements_length,
- Operand(Smi::FromInt(kAllocationDelta)));
+ __ Add(elements_length, elements_length, Smi::FromInt(kAllocationDelta));
__ Str(elements_length,
FieldMemOperand(elements, FixedArray::kLengthOffset));
@@ -4693,7 +4690,7 @@ void RecordWriteStub::InformIncrementalMarker(MacroAssembler* masm) {
__ Mov(address, regs_.address());
__ Mov(x0, regs_.object());
__ Mov(x1, address);
- __ Mov(x2, Operand(ExternalReference::isolate_address(masm->isolate())));
+ __ Mov(x2, ExternalReference::isolate_address(masm->isolate()));
AllowExternalCallThatCantCauseGC scope(masm);
ExternalReference function =
@@ -4948,7 +4945,7 @@ void ProfileEntryHookStub::Generate(MacroAssembler* masm) {
ExternalReference::BUILTIN_CALL,
masm->isolate())));
// It additionally takes an isolate as a third parameter
- __ Mov(x2, Operand(ExternalReference::isolate_address(masm->isolate())));
+ __ Mov(x2, ExternalReference::isolate_address(masm->isolate()));
#endif
// The caller's return address is above the saved temporaries.
@@ -5335,7 +5332,7 @@ static void CreateArrayDispatchOneArgument(MacroAssembler* masm,
STATIC_ASSERT(AllocationSite::ElementsKindBits::kShift == 0);
__ Ldr(x11, FieldMemOperand(allocation_site,
AllocationSite::kTransitionInfoOffset));
- __ Add(x11, x11, Operand(Smi::FromInt(kFastElementsKindPackedToHoley)));
+ __ Add(x11, x11, Smi::FromInt(kFastElementsKindPackedToHoley));
__ Str(x11, FieldMemOperand(allocation_site,
AllocationSite::kTransitionInfoOffset));
@@ -5617,7 +5614,7 @@ void CallApiFunctionStub::Generate(MacroAssembler* masm) {
__ LoadRoot(call_data, Heap::kUndefinedValueRootIndex);
}
Register isolate_reg = x5;
- __ Mov(isolate_reg, Operand(ExternalReference::isolate_address(isolate)));
+ __ Mov(isolate_reg, ExternalReference::isolate_address(isolate));
// FunctionCallbackArguments:
// return value, return value default, isolate, holder.
« no previous file with comments | « src/a64/builtins-a64.cc ('k') | src/a64/codegen-a64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698