about summary refs log blame commit diff stats
path: root/linux/apps/ex2.subx
blob: 342ec6c6b6a1c835faa25acd4a21e7c718312ebe (plain) (tree)
1
2
3
4
5
6
7
8
9
                                                      
 
         
                                                                     
                                 


                  
 
       
 
      



                                              

                            
 
                            
# Add 3 and 4, and return the result in the exit code.
#
# To run:
#   $ bootstrap/bootstrap translate 000init.subx apps/ex2.subx -o ex2
#   $ bootstrap/bootstrap run ex2
# Expected result:
#   $ echo $?
#   2

== code

Entry:
# ebx = 3
bb/copy-to-ebx  3/imm32
# add 4 to ebx
81 0/subop/add 3/mod/direct 3/rm32/ebx 4/imm32
# exit(ebx)
e8/call  syscall_exit/disp32

# . . vim:nowrap:textwidth=0