On 3/12/18 1:55 PM, Segher Boessenkool wrote: > On Sun, Mar 11, 2018 at 10:23:02AM -0500, Peter Bergner wrote: >> +; The following patterns embody what lvx should usually look like. >> +(define_expand "altivec_lvx_<VM2:mode>" >> + [(set (match_operand:VM2 0 "register_operand" "") >> + (match_operand:VM2 1 "altivec_indexed_or_indirect_operand" ""))] > > No "" please. Expanders do not have constraints.
Cut & paste error on my part I believe. Will fix. >> #ifdef HAVE_V8HFmode >> - else if (mode == V8HFmode) >> - stvx = TARGET_64BIT >> - ? gen_altivec_stvx_v8hf_1op (src_exp, memory_address) >> - : gen_altivec_stvx_v8hf_1op_si (src_exp, memory_address); >> + else if (mode == V8HFmode) >> + stvx = gen_altivec_stvx_v8hf (src_exp, dest_exp); >> #endif > > Btw, don't we always have V8HFmode these days? I have no idea, I was just working around code that was already there. Looking at the history, Kelvin seems to have added the tests. Kelvin, what is the above trying to protect? Looking at mu build dirs insn-modes.h, I don't see HAVE_V8HFmode being defined on either my LE or BE builds. What am I missing? Peter