llvm3.2にて(追記あり)
もしかして、LLVM IRのBasicBlockが空行区切りで分割されてしまう?
なんかClangで-emit-llvmを指定して出力すると、ラベルが入るところに空行が入っていて、 予想だけれども、brに指定された変数は、自動的に次のBasicBlockのラベルになるのではないだろうか?
追記
予想2:LLVM IRでは、
- 無名の変数には、%か@の後に符号なし整数が続く名前が自動的に与えられる
- LLVM IRでは、ラベルも変数
- この例で、ラベルはBasic blockが作られる?時に名前が与えられる用に見える
→無名のラベルは、定義順?に連番で作られてるだけでは?