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
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
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
% 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
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]
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
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
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