.text
.globl func2
.type func2,@function
func2:
  ret
