fork download
  1. #include <stdint.h>
  2.  
  3. struct foo { char x[5]; };
  4.  
  5. int copy_foo (struct foo *dst, struct foo *src)
  6. {
  7. *dst = *src;
  8. }
  9.  
  10.  
  11.  
  12. .file "a.c"
  13. __SP_H__ = 0x3e
  14. __SP_L__ = 0x3d
  15. __SREG__ = 0x3f
  16. __RAMPZ__ = 0x3b
  17. __tmp_reg__ = 0
  18. __zero_reg__ = 1
  19. .text
  20. .global copy_foo
  21. .type copy_foo, @function
  22. copy_foo:
  23. push r28
  24. push r29
  25. rcall .
  26. rcall .
  27. in r28,__SP_L__
  28. in r29,__SP_H__
  29. /* prologue: function */
  30. /* frame size = 4 */
  31. /* stack size = 6 */
  32. .L__stack_usage = 6
  33. std Y+2,r25
  34. std Y+1,r24
  35. std Y+4,r23
  36. std Y+3,r22
  37. ldd r24,Y+1
  38. ldd r25,Y+2
  39. ldd r18,Y+3
  40. ldd r19,Y+4
  41. ldi r20,lo8(5)
  42. movw r30,r18
  43. movw r26,r24
  44. 0:
  45. ld r0,Z+
  46. st X+,r0
  47. dec r20
  48. brne 0b
  49. /* epilogue start */
  50. pop __tmp_reg__
  51. pop __tmp_reg__
  52. pop __tmp_reg__
  53. pop __tmp_reg__
  54. pop r29
  55. pop r28
  56. ret
  57. .size copy_foo, .-copy_foo
  58. .ident "GCC: (Gentoo 4.8.1 p1.0, pie-0.5.6) 4.8.1"
Not running #stdin #stdout 0s 0KB
stdin
Standard input is empty
stdout
Standard output is empty