On Fri, Aug 3, 2018 at 6:28 PM Matthew Malcomson <matthew.malcom...@arm.com> wrote: > > On 02/08/18 20:18, James Greenhalgh wrote: > > On Tue, Jul 31, 2018 at 04:53:19AM -0500, Matthew Malcomson wrote: > >> Fixing the ilp32 issue that Christophe found. > >> > >> The existing testcase uses `long` to represent a 64 bit integer. > >> This breaks when compiled using the `-mabi=ilp32` flag. > >> We switch the use of int/long for int32_t/int64_t to avoid this problem > >> and show the requirement of a widening operation more clearly. > > Normally we try to avoid pulling more headers than we need in the testsuite. > > > > Have you seen this construct: > > > > typedef unsigned __attribute__((mode(DI))) uint64_t; > > > > It can be a good way to ensure you have the right type for the patterns you > > are adding.
You can also simply use __UINT64_TYPE__ Use echo | gcc -dD -E - to see what GCC predefines. Richard. > > Thanks, > > James > Thanks! No I hadn't seen that construct before. > Have attached a patch using that construct. > > Matthew