Hacker News new | past | comments | ask | show | jobs | submit login

This is definitely possible, I'll give an example using LLVM's IR

input:

  declare void @g()

  define void @f() {
    br i1 undef, label %if.end, label %if.else

  if.else:
    call void @g()
    br label %if.end

  if.end:
    ret void
  }

  
after optimizations:

  declare void @g()

  define void @f() {
  if.else:
    tail call void @g()
    ret void
  }



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: