Changeset 217523 in webkit for trunk/Source/JavaScriptCore/jit/SnippetParams.h
- Timestamp:
- May 27, 2017, 12:03:41 PM (8 years ago)
- File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/jit/SnippetParams.h
r217522 r217523 1 1 /* 2 2 * Copyright (C) 2016 Apple Inc. All rights reserved. 3 * Copyright (C) 2017 Yusuke Suzuki <[email protected]>. 3 4 * 4 5 * Redistribution and use in source and binary forms, with or without … … 29 30 30 31 #include "CCallHelpers.h" 31 #include "DOMJITSlowPathCalls.h"32 #include "DOMJITValue.h"33 32 #include "JITOperations.h" 34 33 #include "RegisterSet.h" 34 #include "SnippetReg.h" 35 #include "SnippetSlowPathCalls.h" 35 36 36 namespace JSC { namespace DOMJIT {37 namespace JSC { 37 38 38 class PatchpointParams {39 WTF_MAKE_NONCOPYABLE( PatchpointParams);39 class SnippetParams { 40 WTF_MAKE_NONCOPYABLE(SnippetParams); 40 41 public: 41 virtual ~PatchpointParams() { } 42 virtual ~SnippetParams() { } 43 44 class Value { 45 public: 46 Value(SnippetReg reg) 47 : m_reg(reg) 48 { 49 } 50 51 Value(SnippetReg reg, JSValue value) 52 : m_reg(reg) 53 , m_value(value) 54 { 55 } 56 57 bool isGPR() const { return m_reg.isGPR(); } 58 bool isFPR() const { return m_reg.isFPR(); } 59 bool isJSValueRegs() const { return m_reg.isJSValueRegs(); } 60 GPRReg gpr() const { return m_reg.gpr(); } 61 FPRReg fpr() const { return m_reg.fpr(); } 62 JSValueRegs jsValueRegs() const { return m_reg.jsValueRegs(); } 63 64 SnippetReg reg() const 65 { 66 return m_reg; 67 } 68 69 JSValue value() const 70 { 71 return m_value; 72 } 73 74 private: 75 SnippetReg m_reg; 76 JSValue m_value; 77 }; 42 78 43 79 unsigned size() const { return m_regs.size(); } … … 48 84 FPRReg fpScratch(unsigned index) const { return m_fpScratch[index]; } 49 85 50 PatchpointParams(VM& vm, Vector<Value>&& regs, Vector<GPRReg>&& gpScratch, Vector<FPRReg>&& fpScratch)86 SnippetParams(VM& vm, Vector<Value>&& regs, Vector<GPRReg>&& gpScratch, Vector<FPRReg>&& fpScratch) 51 87 : m_vm(vm) 52 88 , m_regs(WTFMove(regs)) … … 66 102 private: 67 103 #define JSC_DEFINE_CALL_OPERATIONS(OperationType, ResultType, ...) JS_EXPORT_PRIVATE virtual void addSlowPathCallImpl(CCallHelpers::JumpList, CCallHelpers&, OperationType, ResultType, std::tuple<__VA_ARGS__> args) = 0; 68 DOMJIT_SLOW_PATH_CALLS(JSC_DEFINE_CALL_OPERATIONS)104 SNIPPET_SLOW_PATH_CALLS(JSC_DEFINE_CALL_OPERATIONS) 69 105 #undef JSC_DEFINE_CALL_OPERATIONS 70 106 … … 75 111 }; 76 112 77 } }113 } 78 114 79 115 #endif
Note:
See TracChangeset
for help on using the changeset viewer.