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

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

Issue 6793016: Record AST ids in relocation info at spots where we collect dynamic type feedback. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: last change Created 9 years, 8 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 | Annotate | Revision Log
« no previous file with comments | « src/x64/full-codegen-x64.cc ('k') | src/x64/macro-assembler-x64.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 2011 the V8 project authors. All rights reserved. 1 // Copyright 2011 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 674 matching lines...) Expand 10 before | Expand all | Expand 10 after
685 685
686 void Call(Label* target) { call(target); } 686 void Call(Label* target) { call(target); }
687 687
688 // Control Flow 688 // Control Flow
689 void Jump(Address destination, RelocInfo::Mode rmode); 689 void Jump(Address destination, RelocInfo::Mode rmode);
690 void Jump(ExternalReference ext); 690 void Jump(ExternalReference ext);
691 void Jump(Handle<Code> code_object, RelocInfo::Mode rmode); 691 void Jump(Handle<Code> code_object, RelocInfo::Mode rmode);
692 692
693 void Call(Address destination, RelocInfo::Mode rmode); 693 void Call(Address destination, RelocInfo::Mode rmode);
694 void Call(ExternalReference ext); 694 void Call(ExternalReference ext);
695 void Call(Handle<Code> code_object, RelocInfo::Mode rmode); 695 void Call(Handle<Code> code_object,
696 RelocInfo::Mode rmode,
697 unsigned ast_id = kNoASTId);
696 698
697 // The size of the code generated for different call instructions. 699 // The size of the code generated for different call instructions.
698 int CallSize(Address destination, RelocInfo::Mode rmode) { 700 int CallSize(Address destination, RelocInfo::Mode rmode) {
699 return kCallInstructionLength; 701 return kCallInstructionLength;
700 } 702 }
701 int CallSize(ExternalReference ext); 703 int CallSize(ExternalReference ext);
702 int CallSize(Handle<Code> code_object) { 704 int CallSize(Handle<Code> code_object) {
703 // Code calls use 32-bit relative addressing. 705 // Code calls use 32-bit relative addressing.
704 return kShortCallInstructionLength; 706 return kShortCallInstructionLength;
705 } 707 }
(...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after
925 void LoadGlobalFunction(int index, Register function); 927 void LoadGlobalFunction(int index, Register function);
926 928
927 // Load the initial map from the global function. The registers 929 // Load the initial map from the global function. The registers
928 // function and map can be the same. 930 // function and map can be the same.
929 void LoadGlobalFunctionInitialMap(Register function, Register map); 931 void LoadGlobalFunctionInitialMap(Register function, Register map);
930 932
931 // --------------------------------------------------------------------------- 933 // ---------------------------------------------------------------------------
932 // Runtime calls 934 // Runtime calls
933 935
934 // Call a code stub. 936 // Call a code stub.
935 void CallStub(CodeStub* stub); 937 void CallStub(CodeStub* stub, unsigned ast_id = kNoASTId);
936 938
937 // Call a code stub and return the code object called. Try to generate 939 // Call a code stub and return the code object called. Try to generate
938 // the code if necessary. Do not perform a GC but instead return a retry 940 // the code if necessary. Do not perform a GC but instead return a retry
939 // after GC failure. 941 // after GC failure.
940 MUST_USE_RESULT MaybeObject* TryCallStub(CodeStub* stub); 942 MUST_USE_RESULT MaybeObject* TryCallStub(CodeStub* stub);
941 943
942 // Tail call a code stub (jump). 944 // Tail call a code stub (jump).
943 void TailCallStub(CodeStub* stub); 945 void TailCallStub(CodeStub* stub);
944 946
945 // Tail call a code stub (jump) and return the code object called. Try to 947 // Tail call a code stub (jump) and return the code object called. Try to
(...skipping 1061 matching lines...) Expand 10 before | Expand all | Expand 10 after
2007 Jump(adaptor, RelocInfo::CODE_TARGET); 2009 Jump(adaptor, RelocInfo::CODE_TARGET);
2008 } 2010 }
2009 bind(&invoke); 2011 bind(&invoke);
2010 } 2012 }
2011 } 2013 }
2012 2014
2013 2015
2014 } } // namespace v8::internal 2016 } } // namespace v8::internal
2015 2017
2016 #endif // V8_X64_MACRO_ASSEMBLER_X64_H_ 2018 #endif // V8_X64_MACRO_ASSEMBLER_X64_H_
OLDNEW
« no previous file with comments | « src/x64/full-codegen-x64.cc ('k') | src/x64/macro-assembler-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698