# expected: 0000000000000000, FFFFFFFFFFFFFFFF, 0000000000000004, 0000000000000000
    .text
_start:
    # 0 sub
    li x1, 0
    subw x31, x0, x1

    # all bits sub + sign extension to 32 bits then 64 bits
    li x1, 1
    subw x31, x0, x1

    # simple subtraction
    li x1, 8
    li x2, 4
    subw x31, x1, x2

    # 32bits trim
    li x1, 0xFFFFFFFF00000000
    subw x31, x1, x1
