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

Side by Side Diff: src/mips/builtins-mips.cc

Issue 9372063: MIPS: Enable serialization for MIPS architecture. (Closed)
Patch Set: Rework on serialization handling of root references. Created 8 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 unified diff | Download patch
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 1077 matching lines...) Expand 10 before | Expand all | Expand 10 after
1088 // Clear the context before we push it when entering the JS frame. 1088 // Clear the context before we push it when entering the JS frame.
1089 __ mov(cp, zero_reg); 1089 __ mov(cp, zero_reg);
1090 1090
1091 // Enter an internal frame. 1091 // Enter an internal frame.
1092 { 1092 {
1093 FrameScope scope(masm, StackFrame::INTERNAL); 1093 FrameScope scope(masm, StackFrame::INTERNAL);
1094 1094
1095 // Set up the context from the function argument. 1095 // Set up the context from the function argument.
1096 __ lw(cp, FieldMemOperand(a1, JSFunction::kContextOffset)); 1096 __ lw(cp, FieldMemOperand(a1, JSFunction::kContextOffset));
1097 1097
1098 __ InitializeRootRegister();
1099
1100 // Push the function and the receiver onto the stack. 1098 // Push the function and the receiver onto the stack.
1101 __ Push(a1, a2); 1099 __ Push(a1, a2);
1102 1100
1103 // Copy arguments to the stack in a loop. 1101 // Copy arguments to the stack in a loop.
1104 // a3: argc 1102 // a3: argc
1105 // s0: argv, i.e. points to first arg 1103 // s0: argv, i.e. points to first arg
1106 Label loop, entry; 1104 Label loop, entry;
1107 __ sll(t0, a3, kPointerSizeLog2); 1105 __ sll(t0, a3, kPointerSizeLog2);
1108 __ addu(t2, s0, t0); 1106 __ addu(t2, s0, t0);
1109 __ b(&entry); 1107 __ b(&entry);
(...skipping 686 matching lines...) Expand 10 before | Expand all | Expand 10 after
1796 __ bind(&dont_adapt_arguments); 1794 __ bind(&dont_adapt_arguments);
1797 __ Jump(a3); 1795 __ Jump(a3);
1798 } 1796 }
1799 1797
1800 1798
1801 #undef __ 1799 #undef __
1802 1800
1803 } } // namespace v8::internal 1801 } } // namespace v8::internal
1804 1802
1805 #endif // V8_TARGET_ARCH_MIPS 1803 #endif // V8_TARGET_ARCH_MIPS
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698