1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-11 01:42:22 +03:00

Work around for an apparent GCC bug. See

[forum:/info/ee7278611394034c|forum post ee7278611394034c] for details.

FossilOrigin-Name: 5d9e9364808793d65925d4efbfde0f4246df258758f15e8ce1105070d1018fe6
This commit is contained in:
drh
2023-07-05 18:59:52 +00:00
parent 85ca6d7ace
commit e68899f1e4
3 changed files with 22 additions and 7 deletions

View File

@@ -386,6 +386,16 @@ u8 sqlite3StrIHash(const char *z){
return h;
}
/*
** Work around an apparent bug in GCC.
** https://sqlite.org/forum/info/ee7278611394034c
*/
#ifdef i386
#pragma GCC push_options
#pragma GCC optimize("float-store")
#endif
/* Double-Double multiplication. (x[0],x[1]) *= (y,yy)
**
** Reference:
@@ -413,6 +423,11 @@ static void dekkerMul2(double *x, double y, double yy){
x[1] += cc;
}
/* End of the GCC bug work-around */
#ifdef i386
#pragma GCC pop_options
#endif
/*
** The string z[] is an text representation of a real number.
** Convert this string to a double and write it into *pResult.