Re: [PATCH, VAX] Correct ffs instruction constraint

2017-07-07 Thread Felix Deichmann
Am 06.07.2017 um 20:53 schrieb Jeff Law: > Hmm, unfortunately I consistently get a call to into libgcc for the > __builtin_ffs code rather than an ffs instruction. That's with a > gcc-4.8.3 as well as with trunk compiler. > > Can you include "-v" output from compiling scsipi_base? Hope this is r

Re: [PATCH, VAX] Correct ffs instruction constraint

2017-07-06 Thread Jeff Law
On 07/06/2017 10:59 AM, Felix Deichmann wrote: > Jeff, > > Am 29.06.2017 schrieb Jeff Law : >> Ideally we'd like to have a testcase for this in the regression suite. >> >> If you could provide the .i file and options used which generated the >> incorrect ffs instruction I can use the reduction too

Re: [PATCH, VAX] Correct ffs instruction constraint

2017-07-06 Thread Felix Deichmann
Jeff, Am 29.06.2017 schrieb Jeff Law : > Ideally we'd like to have a testcase for this in the regression suite. > > If you could provide the .i file and options used which generated the > incorrect ffs instruction I can use the reduction tools with a cross > compiler to produce a nice simple test

Re: [PATCH, VAX] Correct ffs instruction constraint

2017-06-29 Thread Jeff Law
On 06/29/2017 09:47 AM, co...@sdf.org wrote: > Ping. > > On Tue, Jun 20, 2017 at 08:05:42PM +, co...@sdf.org wrote: >> VAX' FFS as variable-length bit field instruction uses a "base" >> operand of type "vb" meaning "byte address". >> "base" can be 32 bits (SI) and due to the definition of >> f

Re: [PATCH, VAX] Correct ffs instruction constraint

2017-06-29 Thread coypu
Ping. On Tue, Jun 20, 2017 at 08:05:42PM +, co...@sdf.org wrote: > VAX' FFS as variable-length bit field instruction uses a "base" > operand of type "vb" meaning "byte address". > "base" can be 32 bits (SI) and due to the definition of > ffssi2/__builtin_ffs() with the operand constraint "m",

[PATCH, VAX] Correct ffs instruction constraint

2017-06-20 Thread coypu
VAX' FFS as variable-length bit field instruction uses a "base" operand of type "vb" meaning "byte address". "base" can be 32 bits (SI) and due to the definition of ffssi2/__builtin_ffs() with the operand constraint "m", code can be emitted which incorrectly implies a mode-dependent (= longword, fo