Advertisement
Guest User

Untitled

a guest
Jan 10th, 2020
148
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. .GLOBAL _ZN2cl5elab1E3st13st2 #elab1(st1 s1, st2 s2)
  2.  
  3.  
  4. _ZN2cl5elab1E3st13st2:
  5.  
  6. #RECORD DI ATTIVAZIONE
  7.  
  8. # i         -60
  9. # cla.v[0]  -56
  10. # cla.v[1]  -48
  11. # cla.v[2]  -40
  12. # cla.v[3]  -32
  13. # cla.c1    -24
  14. # cla.c2    -20
  15. # s2        -16
  16. # s1        -12
  17. # this      -8
  18. # %rbp      0
  19.  
  20. #prologo
  21.  
  22.     pushq %rbp
  23.     movq %rsp, %rbp
  24.     subq $64, %rsp
  25.  
  26. #inizializzazione parametri
  27.  
  28.     movq %rdi, -8(%rbp)
  29.     movl %esi, -12(%rbp)
  30.     movl %edx, -16(%rbp)
  31.  
  32. #chiamata di funzione #cl cla('a', s2);
  33.  
  34.     leaq -56(%rbp), %rdi
  35.     movb $'a', %sil
  36.     movl -16(%rbp), %edx
  37.     call _ZN2clC1EcR3st2
  38.  
  39.     movl $0, -60(%rbp)
  40.  
  41. for1:
  42.  
  43.     cmpl $4, -60(%rbp)
  44.     jge finefor1
  45.  
  46. if:
  47.  
  48.     movq -8(%rbp), %rdi #this
  49.     leaq -12(%rbp), %rsi #&s1
  50.     movslq -60(%rbp), %rcx #i
  51.     leaq -56(%rbp), %rdx #cla
  52.  
  53.     movb 36(%rdi,%rcx,1), %al #c2.vc[i]
  54.     movb (%rsi,%rcx,1), %r9b
  55.     cmpb %r9b, %al #(c2.vc[i] <= s1.vc[i])
  56.     jg fineif
  57.  
  58.     movb 36(%rdx,%rcx,1), %al # cla.c2.vc[i] -> %al
  59.     addb %cl, %al #i + cla.c2.vc[i];
  60.     movb %al, 32(%rdi,%rcx,1) #c1.vc[i] = i + cla.c2.vc[i];
  61.  
  62.     movq %rcx, %rax # i-> %rax
  63.     subq (%rdx,%rcx,8), %rax #i - cla.v[i];
  64.     movq %rax, (%rdi,%rcx,8) # v[i] = i - cla.v[i];
  65.  
  66. fineif:
  67.  
  68.     incl -60(%rbp)
  69.     jmp for1
  70.    
  71. finefor1:
  72.  
  73.     movq -8(%rbp), %rax
  74.     leave
  75.     ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement