blob: e6d7a653e19fb07dc89df8abb3474470849da411 [file] [log] [blame]
.syntax unified
.text
.align 2
.global thumb2_mul
.thumb
.thumb_func
thumb2_mul:
# These can use the 16-bit encoding.
itt eq
muleq r0, r1, r0
muleq r0, r0, r1
# These must use the 32-bit encoding because they involve
# high registers.
ittt eq
muleq r0, r0, r8
muleq r0, r8, r0
muleq r8, r0, r8
# These must use the 32-bit encoding because the source and
# destination do not match.
itt eq
muleq r0, r1, r1
muleq r0, r1, r2
# These must use the 32-bit encoding because of the explicit
# suffix.
itt eq
muleq.w r0, r1, r0
muleq.w r0, r0, r1