動的メソッドを生成しようとしています。スタックにブール値arg
があるとします。その値から単純な規則int
で変換される型の引数を受け入れるメソッドを呼び出したいと思います。一部のサンプル コードで生成された IL コードは以下のとおりです。bool
arg ? 1 : 0
//bool value is already pushed into stack
IL_003d: brtrue.s IL_0042
IL_003f: ldc.i4.0
IL_0040: br.s IL_0043
IL_0042: ldc.i4.1
IL_0043: callvirt --methodName--
エミットするとき、ジャンプ先のオフセットを正しく特定するOpCodes.Brtrue_S
にOpCodes.Br_S
はどうすればよいですか?