函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:arch\x86\lib\insn.c Create Date:2022-07-27 08:24:14
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:sn_get_immediate() - Get the immediates of instruction*@insn: &struct insn containing instruction* If necessary, first collects the instruction up to and including the* displacement bytes.* Basically, most of immediates are sign-expanded

函数原型:void insn_get_immediate(struct insn *insn)

返回类型:void

参数:

类型参数名称
struct insn *insn
551  如果 !0 if we've run insn_get_xxx() for this field 则返回
553  如果非 !0 if we've run insn_get_xxx() for this field sn_get_displacement() - Get the displacement of instruction*@insn: &struct insn containing instruction* If necessary, first collects the instruction up to and including the* SIB byte.* Displacement value is sign-expanded.
556  如果inat_has_moffset(attr)则
557  如果非Decode moffset16/32/64. Return 0 if failed 则转到:err_out
559  转到:done
562  如果非inat_has_immediate(attr)则转到:done
567  :inat_immediate_size(attr)恒等于Immediate size
568  value等于get_next(signedchar, insn)
569  nbytes等于1
570  退出
571  :inat_immediate_size(attr)恒等于INAT_IMM_WORD
572  value等于get_next(short, insn)
573  nbytes等于2
574  退出
575  :inat_immediate_size(attr)恒等于INAT_IMM_DWORD
576  value等于get_next(int, insn)
577  nbytes等于4
578  退出
579  :inat_immediate_size(attr)恒等于INAT_IMM_QWORD
580  value等于get_next(int, insn)
581  nbytes等于4
582  value等于get_next(int, insn)
583  nbytes等于4
584  退出
585  :inat_immediate_size(attr)恒等于INAT_IMM_PTR
586  如果非Decode ptr16:16/32(Ap) 则转到:err_out
588  退出
589  :inat_immediate_size(attr)恒等于INAT_IMM_VWORD32
590  如果非Decode imm v32(Iz). Return 0 if failed 则转到:err_out
592  退出
593  :inat_immediate_size(attr)恒等于INAT_IMM_VWORD
594  如果非Decode imm v64(Iv/Ov), Return 0 if failed 则转到:err_out
596  退出
597  默认
599  转到:err_out
601  如果inat_has_second_immediate(attr)则
602  value等于get_next(signedchar, insn)
603  nbytes等于1
605  done :
606  !0 if we've run insn_get_xxx() for this field 等于1
608  err_out :
609  返回
调用者
名称描述
insn_get_lengthsn_get_length() - Get the length of instruction*@insn: &struct insn containing instruction* If necessary, first collects the instruction up to and including the* immediates bytes.