Lua5.3 虚拟机指令分析(六)不定参数
来源:互联网 发布:剑网三捏脸数据免费 编辑:程序博客网 时间:2024/06/01 09:26
Lua5.3 虚拟机指令分析(六)不定参数
OP_VARARG
OP_VARARG,/* A B R(A), R(A+1), ..., R(A+B-2) = vararg */TTcs-Mac-mini:OpCode ttc$ cat tOP_VARARG.luaf1 = function(...) endf1(10,20,...)TTcs-Mac-mini:OpCode ttc$ ./luac -l -l tOP_VARARG.luamain <tOP_VARARG.lua:0,0> (8 instructions at 0x7fa857403870)0+ params, 4 slots, 1 upvalue, 0 locals, 3 constants, 1 function 1 [1] CLOSURE (iABx) [A]0 [U]0 ; 0x7fa857403a20 2 [1] SETTABUP (iABC) [A]0 [ISK]256[B]-1[ISK]0[C]0 ; _ENV "f1" 3 [3] GETTABUP (iABC) [A]0 [ISK]0[B]0[ISK]256[C]-1 ; _ENV "f1" 4 [3] LOADK (iABx) [A]1 [K]-2 ; 10 5 [3] LOADK (iABx) [A]2 [K]-3 ; 20 6 [3] VARARG (iABC) [A]3 [ISK]0[B]0[ISK]0 7 [3] CALL (iABC) [A]0 [ISK]0[B]0[ISK]0[C]1 8 [3] RETURN (iABC) [A]0 [ISK]0[B]1[ISK]0constants (3) for 0x7fa857403870: 1(idx) "f1" 2(idx) 10 3(idx) 20locals (0) for 0x7fa857403870:upvalues (1) for 0x7fa857403870: 0 _ENV(name) 1(instack) 0(idx)function <tOP_VARARG.lua:1,1> (1 instruction at 0x7fa857403a20)0+ params, 2 slots, 0 upvalues, 0 locals, 0 constants, 0 functions 1 [1] RETURN (iABC) [A]0 [ISK]0[B]1[ISK]0constants (0) for 0x7fa857403a20:locals (0) for 0x7fa857403a20:upvalues (0) for 0x7fa857403a20:TTcs-Mac-mini:OpCode ttc$
阅读全文
0 0
- Lua5.3 虚拟机指令分析(六)不定参数
- Lua5.3 虚拟机指令分析(二)赋值指令
- Lua5.3 虚拟机指令分析(十)表相关指令
- Lua5.3 虚拟机指令分析(一)概述
- Lua5.3 虚拟机指令分析(三)表达式运算
- Lua5.3 虚拟机指令分析(四)分支与跳转
- Lua5.3 虚拟机指令分析(五)函数调用
- Lua5.3 虚拟机指令分析(八)循环
- 探索Lua5.2内部实现:虚拟机指令(3) Upvalues & Globals
- 探索Lua5.2内部实现:虚拟机指令(5)Arithmetic
- 探索Lua5.2内部实现:虚拟机指令(6)FUNCTION
- 不定参数的分析
- 探索Lua5.2内部实现:虚拟机指令(1) 概述
- 探索Lua5.2内部实现:虚拟机指令(2) MOVE & LOAD
- 探索Lua5.2内部实现:虚拟机指令(4) Table
- 探索Lua5.2内部实现:虚拟机指令(8) LOOP
- Lua5.3 VM 分析(一)字节码运行
- Lua5.3 VM 分析(二)表处理
- c++的类模板
- Java虚拟机二:垃圾回收机制
- Django中models文件中的字段
- Lua5.3 虚拟机指令分析(五)函数调用
- 搭建javaweb服务器
- Lua5.3 虚拟机指令分析(六)不定参数
- Lua5.3 虚拟机指令分析(八)循环
- Lua5.3 虚拟机指令分析(十)表相关指令
- Linux后台开发具备能力集锦
- Lua 5.3 源文件加载
- cocos studio 3.10
- 怎样理解阻塞非阻塞与同步异步的区别?(个人理解)
- java学习——java基础(五)之集合类
- 正则表达式学习笔记