[PATCH] D36061: [MSP430] Implement multiplication by a constant

Vadzim Dambrouski via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 31 17:12:07 PDT 2017


pftbest added a comment.

@efriedma 
Good catch, I accidentally used i8 type instead of i16 and didn't notice, sorry.
The correct code is rather large indeed (27 ops), so I'll add the option, and set the default limit to 12.

  ; BB#0:
  	mov.w	r12, r13
  	rla.w	r12
  	add.w	r12, r13
  	rla.w	r12
  	rla.w	r12
  	rla.w	r12
  	mov.w	r12, r14
  	sub.w	r13, r14
  	rla.w	r12
  	rla.w	r12
  	mov.w	r12, r13
  	sub.w	r14, r13
  	rla.w	r12
  	rla.w	r12
  	mov.w	r12, r14
  	sub.w	r13, r14
  	rla.w	r12
  	rla.w	r12
  	mov.w	r12, r13
  	sub.w	r14, r13
  	rla.w	r12
  	rla.w	r12
  	mov.w	r12, r14
  	sub.w	r13, r14
  	rla.w	r12
  	rla.w	r12
  	sub.w	r14, r12
  	ret


https://reviews.llvm.org/D36061





More information about the llvm-commits mailing list