OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_S390_MACRO_ASSEMBLER_S390_H_ | 5 #ifndef V8_S390_MACRO_ASSEMBLER_S390_H_ |
6 #define V8_S390_MACRO_ASSEMBLER_S390_H_ | 6 #define V8_S390_MACRO_ASSEMBLER_S390_H_ |
7 | 7 |
8 #include "src/assembler.h" | 8 #include "src/assembler.h" |
9 #include "src/bailout-reason.h" | 9 #include "src/bailout-reason.h" |
10 #include "src/frames.h" | 10 #include "src/frames.h" |
(...skipping 914 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
925 // Push a new stack handler and link into stack handler chain. | 925 // Push a new stack handler and link into stack handler chain. |
926 void PushStackHandler(); | 926 void PushStackHandler(); |
927 | 927 |
928 // Unlink the stack handler on top of the stack from the stack handler chain. | 928 // Unlink the stack handler on top of the stack from the stack handler chain. |
929 // Must preserve the result register. | 929 // Must preserve the result register. |
930 void PopStackHandler(); | 930 void PopStackHandler(); |
931 | 931 |
932 // --------------------------------------------------------------------------- | 932 // --------------------------------------------------------------------------- |
933 // Inline caching support | 933 // Inline caching support |
934 | 934 |
935 // Generate code for checking access rights - used for security checks | |
936 // on access to global objects across environments. The holder register | |
937 // is left untouched, whereas both scratch registers are clobbered. | |
938 void CheckAccessGlobalProxy(Register holder_reg, Register scratch, | |
939 Label* miss); | |
940 | |
941 void GetNumberHash(Register t0, Register scratch); | 935 void GetNumberHash(Register t0, Register scratch); |
942 | 936 |
943 inline void MarkCode(NopMarkerTypes type) { nop(type); } | 937 inline void MarkCode(NopMarkerTypes type) { nop(type); } |
944 | 938 |
945 // Check if the given instruction is a 'type' marker. | 939 // Check if the given instruction is a 'type' marker. |
946 // i.e. check if is is a mov r<type>, r<type> (referenced as nop(type)) | 940 // i.e. check if is is a mov r<type>, r<type> (referenced as nop(type)) |
947 // These instructions are generated to mark special location in the code, | 941 // These instructions are generated to mark special location in the code, |
948 // like some special IC code. | 942 // like some special IC code. |
949 static inline bool IsMarkedCode(Instr instr, int type) { | 943 static inline bool IsMarkedCode(Instr instr, int type) { |
950 DCHECK((FIRST_IC_MARKER <= type) && (type < LAST_CODE_MARKER)); | 944 DCHECK((FIRST_IC_MARKER <= type) && (type < LAST_CODE_MARKER)); |
(...skipping 923 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1874 inline MemOperand NativeContextMemOperand() { | 1868 inline MemOperand NativeContextMemOperand() { |
1875 return ContextMemOperand(cp, Context::NATIVE_CONTEXT_INDEX); | 1869 return ContextMemOperand(cp, Context::NATIVE_CONTEXT_INDEX); |
1876 } | 1870 } |
1877 | 1871 |
1878 #define ACCESS_MASM(masm) masm-> | 1872 #define ACCESS_MASM(masm) masm-> |
1879 | 1873 |
1880 } // namespace internal | 1874 } // namespace internal |
1881 } // namespace v8 | 1875 } // namespace v8 |
1882 | 1876 |
1883 #endif // V8_S390_MACRO_ASSEMBLER_S390_H_ | 1877 #endif // V8_S390_MACRO_ASSEMBLER_S390_H_ |
OLD | NEW |