Skip to content

Instantly share code, notes, and snippets.

@ryo
Created February 15, 2018 05:16
Show Gist options
  • Save ryo/31017f265cc2f9ade124aea64543df22 to your computer and use it in GitHub Desktop.
Save ryo/31017f265cc2f9ade124aea64543df22 to your computer and use it in GitHub Desktop.
aarch64 condition code cheat sheet
meaning cmp A, B sign flags
------------------------------- ------- --------------- --------------- -------------------
equal eq A == B - Z == 1
not equal ne A != B - Z == 0
carry set cs,hs A >= B unsigned C == 1
carry clear cc,lo A < B unsigned C == 0
higher hi A > B unsigned C == 1 && Z == 0
lower or same ls A <= B unsigned !(C == 1 && Z == 0)
greater than or equal ge A >= B signed N == V
less than lt A < B signed N != V
greater than gt A > B signed Z == 0 && N == V
less than or equal le A <= B signed !(Z == 0 && N == V)
minus, negative mi A < B - N == 1
plus or zero pl A >= B - N == 0
overflow set vs - - V == 1
overflow clear vc - - V == 0
always al true - -
always nv true - -
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment