Вместо noop или оператора, который оптимизируется под noop, создайте метку и ветвь для вашего условия if.
- Это упрощает генерацию кода, без особых случаев, когда есть или нет.
- Оптимизатор преобразует их в инструкции фи.
- Это делает намерение кода явным для разработчика. В будущем вам или другим людям не нужно будет выяснять, почему эта дополнительная инструкция была вставлена.
Например:
%2 = icmp sgt i32 %0, %1
br i1 %2, label %3, label %7
; <label>:3
; ;; [instructions in block redacted for simplicity]
br label %8
; <label>:7
br label %8
; <label>:8
%9 = load i32* %x, align 4 ;; continue on our merry way