# asm generated by clang from the following C code:
#   void puts(const char*);
#   void hello() { puts("hello\n"); }

  .functype puts (i32) -> ()

  .globl  hello
hello:
  .functype hello () -> ()
  i32.const hello_str
  call  puts
  end_function

  .section  .rodata.hello_str,"",@
  .globl  hello_str
hello_str:
  .asciz  "hello\n"
  .size hello_str, 7
