本文整理匯總了Golang中github.com/tsavola/wag/internal/gen.OpCoder.Len方法的典型用法代碼示例。如果您正苦於以下問題:Golang OpCoder.Len方法的具體用法?Golang OpCoder.Len怎麽用?Golang OpCoder.Len使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/tsavola/wag/internal/gen.OpCoder
的用法示例。
在下文中一共展示了OpCoder.Len方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: op
func (i insnAddr32) op(code gen.OpCoder, addr int32) {
var offset int32
if addr != 0 {
siteAddr := code.Len() + i.size()
offset = addr - siteAddr
} else {
offset = -i.size() // infinite loop as placeholder
}
i.writeTo(code, offset)
}
示例2: OpInit
func (mach X86) OpInit(code gen.OpCoder, startAddr int32) (retAddr int32) {
if code.Len() == 0 || code.Len() > functionAlignment {
panic("inconsistency")
}
code.Align(functionAlignment, paddingByte)
Add.opImm(code, types.I64, regStackLimit, gen.StackReserve)
var notResume links.L
Test.opFromReg(code, types.I64, regResult, regResult)
Je.rel8.opStub(code)
notResume.AddSite(code.Len())
Ret.op(code) // simulate return from snapshot function call
notResume.Addr = code.Len()
mach.updateBranches8(code, ¬Resume)
CallRel.op(code, startAddr)
return code.Len()
}
示例3: opMissingFunction
func (i insnAddr32) opMissingFunction(code gen.OpCoder) {
siteAddr := code.Len() + i.size()
i.writeTo(code, -siteAddr)
}
示例4: opStub
func (i insnAddr8) opStub(code gen.OpCoder) {
i.op(code, code.Len()) // infinite loop as placeholder
}