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

Side by Side Diff: src/arm/macro-assembler-arm.h

Issue 6062002: Merge 6006:6095 from bleeding_edge to experimental/gc branch. (Closed) Base URL: http://v8.googlecode.com/svn/branches/experimental/gc/
Patch Set: Created 10 years 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 | Annotate | Revision Log
« no previous file with comments | « src/arm/lithium-codegen-arm.cc ('k') | src/arm/macro-assembler-arm.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2010 the V8 project authors. All rights reserved. 1 // Copyright 2010 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 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 void Jump(Handle<Code> code, RelocInfo::Mode rmode, Condition cond = al); 89 void Jump(Handle<Code> code, RelocInfo::Mode rmode, Condition cond = al);
90 void Call(Register target, Condition cond = al); 90 void Call(Register target, Condition cond = al);
91 void Call(byte* target, RelocInfo::Mode rmode, Condition cond = al); 91 void Call(byte* target, RelocInfo::Mode rmode, Condition cond = al);
92 void Call(Handle<Code> code, RelocInfo::Mode rmode, Condition cond = al); 92 void Call(Handle<Code> code, RelocInfo::Mode rmode, Condition cond = al);
93 void Ret(Condition cond = al); 93 void Ret(Condition cond = al);
94 94
95 // Emit code to discard a non-negative number of pointer-sized elements 95 // Emit code to discard a non-negative number of pointer-sized elements
96 // from the stack, clobbering only the sp register. 96 // from the stack, clobbering only the sp register.
97 void Drop(int count, Condition cond = al); 97 void Drop(int count, Condition cond = al);
98 98
99 void Ret(int drop, Condition cond = al);
99 100
100 // Swap two registers. If the scratch register is omitted then a slightly 101 // Swap two registers. If the scratch register is omitted then a slightly
101 // less efficient form using xor instead of mov is emitted. 102 // less efficient form using xor instead of mov is emitted.
102 void Swap(Register reg1, 103 void Swap(Register reg1,
103 Register reg2, 104 Register reg2,
104 Register scratch = no_reg, 105 Register scratch = no_reg,
105 Condition cond = al); 106 Condition cond = al);
106 107
107 108
108 void And(Register dst, Register src1, const Operand& src2, 109 void And(Register dst, Register src1, const Operand& src2,
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after
292 // Invoke the JavaScript function in the given register. Changes the 293 // Invoke the JavaScript function in the given register. Changes the
293 // current context to the context in the function before invoking. 294 // current context to the context in the function before invoking.
294 void InvokeFunction(Register function, 295 void InvokeFunction(Register function,
295 const ParameterCount& actual, 296 const ParameterCount& actual,
296 InvokeFlag flag); 297 InvokeFlag flag);
297 298
298 void InvokeFunction(JSFunction* function, 299 void InvokeFunction(JSFunction* function,
299 const ParameterCount& actual, 300 const ParameterCount& actual,
300 InvokeFlag flag); 301 InvokeFlag flag);
301 302
303 void IsObjectJSObjectType(Register heap_object,
304 Register map,
305 Register scratch,
306 Label* fail);
307
308 void IsInstanceJSObjectType(Register map,
309 Register scratch,
310 Label* fail);
311
312 void IsObjectJSStringType(Register object,
313 Register scratch,
314 Label* fail);
302 315
303 #ifdef ENABLE_DEBUGGER_SUPPORT 316 #ifdef ENABLE_DEBUGGER_SUPPORT
304 // --------------------------------------------------------------------------- 317 // ---------------------------------------------------------------------------
305 // Debugger Support 318 // Debugger Support
306 319
307 void DebugBreak(); 320 void DebugBreak();
308 #endif 321 #endif
309 322
310 // --------------------------------------------------------------------------- 323 // ---------------------------------------------------------------------------
311 // Exception handling 324 // Exception handling
(...skipping 495 matching lines...) Expand 10 before | Expand all | Expand 10 after
807 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) 820 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__)
808 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> 821 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm->
809 #else 822 #else
810 #define ACCESS_MASM(masm) masm-> 823 #define ACCESS_MASM(masm) masm->
811 #endif 824 #endif
812 825
813 826
814 } } // namespace v8::internal 827 } } // namespace v8::internal
815 828
816 #endif // V8_ARM_MACRO_ASSEMBLER_ARM_H_ 829 #endif // V8_ARM_MACRO_ASSEMBLER_ARM_H_
OLDNEW
« no previous file with comments | « src/arm/lithium-codegen-arm.cc ('k') | src/arm/macro-assembler-arm.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698