Re: [HACKERS] GIN FailedAssertions on Itanium2 with Intel compiler

2006-09-03 Thread Sergey E. Koposov
On Sat, 2 Sep 2006, Bruce Momjian wrote: Teodor Sigaev wrote: What does that option do? Is it practical to enable it for the entire backend? From docs: Disables inline expansion of standard library or intrinsic functions. And isn't this a straightforward compiler bug they should be notified

Re: [HACKERS] GIN FailedAssertions on Itanium2 with Intel compiler

2006-09-01 Thread Teodor Sigaev
What does that option do? Is it practical to enable it for the entire backend? From docs: Disables inline expansion of standard library or intrinsic functions. And isn't this a straightforward compiler bug they should be notified about? What's a choice? Now I see 3: 1) -O1 2) "volatile" 3) -no

Re: [HACKERS] GIN FailedAssertions on Itanium2 with Intel compiler

2006-09-01 Thread Martijn van Oosterhout
On Fri, Sep 01, 2006 at 03:10:44PM +0400, Teodor Sigaev wrote: > BTW, this example works correct with -nolib-inline > (http://www.intel.com/software/products/compilers/clin/docs/main_cls/mergedprojects/copts_cls/ccpp_options/option_nolib_inline.htm): > % icc -O2 -nolib_inline -o 1 1.c&& ./1 > CAL

Re: [HACKERS] GIN FailedAssertions on Itanium2 with Intel compiler

2006-09-01 Thread Teodor Sigaev
% icc -O2 -o 1 1.c && ./1 CALL cmp SET SI = 1 BUG: SI==0 % icc -O1 -o 1 1.c && ./1 CALL cmp SET SI = 1 OK BTW, this example works correct with -nolib-inline (http://www.intel.com/software/products/compilers/clin/docs/main_cls/mergedprojects/copts_cls/ccpp_options/option_nolib_inline.htm): % ic

Re: [HACKERS] GIN FailedAssertions on Itanium2 with Intel compiler

2006-09-01 Thread Teodor Sigaev
Huh, it's a over-optimization by icc on Itanium. With -00 or -02 there is no any problem, only -O2 produces such effect. The problem is in code Sorry, right "With -00 or -01 there is no any problem" -- Teodor Sigaev E-mail: [EMAIL PROTECTED]

Re: [HACKERS] GIN FailedAssertions on Itanium2 with Intel compiler

2006-08-31 Thread Teodor Sigaev
Simple illustration: #include #include static char SI = 0; static int cmp(const void *a, const void *b) { puts("CALL cmp"); if ( *(int*)a == *(int*)b ) { puts("SET SI = 1"); SI = 1; return 0; } return ( *(int*)a > *(int*)b ) ? 1 : -1; } int main(int ar

Re: [HACKERS] GIN FailedAssertions on Itanium2 with Intel compiler

2006-08-31 Thread Teodor Sigaev
Huh, it's a over-optimization by icc on Itanium. With -00 or -02 there is no any problem, only -O2 produces such effect. The problem is in code at lines 125-172 in ginutils.c: static bool needUnique = false; int cmpFunc(...) { ... if (...) needUnique = true; ... } ... n

[HACKERS] GIN FailedAssertions on Itanium2 with Intel compiler

2006-08-30 Thread Sergey E. Koposov
Hello -hackers, I see a make check failures on Itanium2 platform with Intel Compiler with CVS HEAD. A failure is coming for GIN. The problem is coming at the assertion at ginbulk.c:62 TRAP: FailedAssertion("!(res != 0)", File: "ginbulk.c", Line: 62) during the index creation from the regr. te