cのif文とassembler

#include <stdio.h>
#include <stdbool.h>

int main(void) {

    bool tenki = true;

    if(tenki == true) 
        printf("晴です\n");
    else 
        printf("雨です\n");
    
    return 0;
}
|main|  PROC
|$LN5|
        stp         fp,lr,[sp,#-0x20]!
        mov         fp,sp
        mov         w8,#1
        strb        w8,[sp,#0x10]
        ldrb        w8,[sp,#0x10]
        mov         w8,w8
        cmp         w8,#1
        bne         |$LN2@main|
        adrp        x8,|$SG4984|
        add         x0,x8,|$SG4984|
        bl          printf
        b           |$LN3@main|
|$LN2@main|
        adrp        x8,|$SG4985|
        add         x0,x8,|$SG4985|
        bl          printf
|$LN3@main|
        mov         w0,#0
        ldp         fp,lr,[sp],#0x20
        ret

cmp : レジスタからレジスタ、またはレジスタから定数の減算を行って、演算結果に対応した条件フラグを設定
-> compareか?

bne: bはジャンプなので、neで異なる場合は$LN2@mainにjumpとなっていることがわかりますね。
条件分岐でelseの場合はニーモニックにlabelをつけて、そこへjumpするように出力していることがわかります。