> -----Original Message----- > From: Richard Henderson <richard.hender...@linaro.org> > Sent: Tuesday, April 6, 2021 3:46 PM > To: Taylor Simpson <tsimp...@quicinc.com>; qemu-devel@nongnu.org > Cc: phi...@redhat.com; a...@rev.ng; Brian Cain <bc...@quicinc.com> > Subject: Re: [PATCH v2 12/21] Hexagon (target/hexagon) add F2_sfrecipa > instruction > > On 3/31/21 8:53 PM, Taylor Simpson wrote: > > +int arch_recip_lookup(int index) > > +{ > > + index &= 0x7f; > > + const uint8_t roundrom[128] = { > > + 0x0fe, 0x0fa, 0x0f6, 0x0f2, 0x0ef, 0x0eb, 0x0e7, 0x0e4, > > + 0x0e0, 0x0dd, 0x0d9, 0x0d6, 0x0d2, 0x0cf, 0x0cc, 0x0c9, > > + 0x0c6, 0x0c2, 0x0bf, 0x0bc, 0x0b9, 0x0b6, 0x0b3, 0x0b1, > > + 0x0ae, 0x0ab, 0x0a8, 0x0a5, 0x0a3, 0x0a0, 0x09d, 0x09b, > > + 0x098, 0x096, 0x093, 0x091, 0x08e, 0x08c, 0x08a, 0x087, > > + 0x085, 0x083, 0x080, 0x07e, 0x07c, 0x07a, 0x078, 0x075, > > + 0x073, 0x071, 0x06f, 0x06d, 0x06b, 0x069, 0x067, 0x065, > > + 0x063, 0x061, 0x05f, 0x05e, 0x05c, 0x05a, 0x058, 0x056, > > + 0x054, 0x053, 0x051, 0x04f, 0x04e, 0x04c, 0x04a, 0x049, > > + 0x047, 0x045, 0x044, 0x042, 0x040, 0x03f, 0x03d, 0x03c, > > + 0x03a, 0x039, 0x037, 0x036, 0x034, 0x033, 0x032, 0x030, > > + 0x02f, 0x02d, 0x02c, 0x02b, 0x029, 0x028, 0x027, 0x025, > > + 0x024, 0x023, 0x021, 0x020, 0x01f, 0x01e, 0x01c, 0x01b, > > + 0x01a, 0x019, 0x017, 0x016, 0x015, 0x014, 0x013, 0x012, > > + 0x011, 0x00f, 0x00e, 0x00d, 0x00c, 0x00b, 0x00a, 0x009, > > + 0x008, 0x007, 0x006, 0x005, 0x004, 0x003, 0x002, 0x000, > > + }; > > + return roundrom[index]; > ... > > + if (arch_sf_recip_common(&RsV, &RtV, &RdV, &adjust, &env- > >fp_status)) { > > + PeV = adjust; > > + idx = (RtV >> 16) & 0x7f; > > + mant = (arch_recip_lookup(idx) << 15) | 1; > > Why not just export the table and not the function? > You're already masking the index at the single use.
I'll do that for both. I assume you are still OK giving your Reviewed-by from the previous two emails. Thanks, Taylor