[PATCH] [PPC64LE] Remove unnecessary swaps from lane-insensitive vector computations

hfinkel at anl.gov hfinkel at anl.gov
Mon Apr 27 08:46:30 PDT 2015


In http://reviews.llvm.org/D8565#161928, @wschmidt wrote:

> Hal, I've looked this over a bit more, and I'm not very happy with this approach.
>
> To support this, I'll have to add multiclass wrappers for all of the following:
>
>   XForm_1
>   XForm_8
>   VA1a_int_Ty3
>   VA1a_Int_Ty
>   VAForm_2
>   VXForm_1
>   VX1_Int_Ty2
>   VX1_Int_Ty
>   VX1_Int_Ty3
>   VXCR_Int_Ty
>   XX1Form
>   XX3Form
>   XX2Form_2
>   
>
> This is becoming a huge mangled mess, in an attempt to avoid listing these instructions in a switch statement.  At this point I would like to suggest that TableGen is not set up to cleanly create sets of instructions, and revert to using the switch statement.  Any objections?


Unfortunately, I don't object :( -- It is not clear that the multiclass setup is any more obvious or more maintainable than the switch statement. You can go back to the switch statement, with a FIXME. Also, add a prominent note in PPCInstrAltivec.td and in PPCInstrVSX.td reminding us that we may need to update the list if new vector instructions are added.


REPOSITORY
  rL LLVM

http://reviews.llvm.org/D8565

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the llvm-commits mailing list