From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Greg Stark <stark(at)mit(dot)edu> |
Cc: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: LLVM miscompiles numeric.c access to short numeric var headers |
Date: | 2015-11-12 16:43:15 |
Message-ID: | 28319.1447346595@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Greg Stark <stark(at)mit(dot)edu> writes:
> On Thu, Nov 12, 2015 at 3:51 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>> I think we could fix the immediate issue by redeclaring numeric
>> headers as arrays of (u)int16 rather than structs. I'm not
>> very excited about the packed-header case.
> That would require giving up the pretense that the code supports base
> 10 and base 100 I suppose.
No, not really. If we redefine NumericVar as a uint16 array,
then we'd have n_header or n_sign_dscale as array[0],
n_weight as (int16) array[1], and n_data as (NumericDigit *) &array[1]
or (NumericDigit *) &array[2] depending. Doesn't matter which
way NumericDigit is declared.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Fujii Masao | 2015-11-12 16:44:35 | Re: BUG #13741: vacuumdb does not accept valid password |
Previous Message | Matthijs van der Vleuten | 2015-11-12 16:41:49 | Re: psql: add \pset true/false |