Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
ESIL(7)		       Miscellaneous Information Manual		       ESIL(7)

NAME
       ESIL - Evaluable	Strings	Intermediate Language

DESCRIPTION
       ESIL  aims to describe a	Forth-like representation for every target CPU
       opcode semantics. ESIL representations can be  evaluated	 (interpreted)
       in order	to emulate individual instructions.

SYNTAX
       Each command of an ESIL expression is separated by a comma

       <source0>,<source1>,<operation>

       <source>,<destination>,<operation>

       <source_destination>,<operation>

BASIC OPERATIONS
       These  operations  should be enough to emulate most instructions	of any
       architecture

       =      Set the value of the destination to the value of the source

       +      Add the values of	source0	and source1 and	push the result	on the
	      esil stack

       -      Subtract the value of source0 from the value of source1 and push
	      the result on the	esil stack

       *      Multiply the values of source0 and source1 and push  the	result
	      on the esil stack

       /      Divide the value of source1 by the value of source0

BASIC OPERATIONS EXAMPLES (x86)
       jmp eax -> eax,eip,=

SEE ALSO
       rizin(1)

								       ESIL(7)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=rz-esil&sektion=7&manpath=FreeBSD+Ports+14.3.quarterly>

home | help