mirror of
https://github.com/sqlite/sqlite.git
synced 2025-11-14 00:22:38 +03:00
Additional comments ono the SQLITE_MIXED_ENDIAN_64BIT_FLOAT issue. (CVS 4029)
FossilOrigin-Name: dd48a31e671de09f59661b2ba1a20e7b9f09099a
This commit is contained in:
12
manifest
12
manifest
@@ -1,5 +1,5 @@
|
||||
C Make\ssure\szeroblob()\sworks\swith\sthe\sconcatenation\soperator.\s\sTicket\s#2379.\s(CVS\s4028)
|
||||
D 2007-05-23T06:31:39
|
||||
C Additional\scomments\sono\sthe\sSQLITE_MIXED_ENDIAN_64BIT_FLOAT\sissue.\s(CVS\s4029)
|
||||
D 2007-05-23T07:20:09
|
||||
F Makefile.in a42354804b50c2708ce72cf79e4daa30f50191b5
|
||||
F Makefile.linux-gcc 2d8574d1ba75f129aba2019f0b959db380a90935
|
||||
F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
|
||||
@@ -137,7 +137,7 @@ F src/vdbe.c 74a82e8dc0cd84416fcca63d158c5ab8715f158d
|
||||
F src/vdbe.h 001c5b257567c1d3de7feb2203aac71d0d7b16a3
|
||||
F src/vdbeInt.h 7d2bf163d6d4e815724a457f2216dd8e38c3955c
|
||||
F src/vdbeapi.c f89d6bc5264e66f44589e454fbeeee96854d0dd3
|
||||
F src/vdbeaux.c 47f483c35c27dc0806715182ef6b281320c4b9b5
|
||||
F src/vdbeaux.c a978d170b2ca99c8ff3da8a91f116a66da2600ac
|
||||
F src/vdbeblob.c 96f3572fdc45eda5be06e6372b612bc30742d9f0
|
||||
F src/vdbefifo.c 3ca8049c561d5d67cbcb94dc909ae9bb68c0bf8f
|
||||
F src/vdbemem.c 332875a5fc9ac482e00701db5487ceb7f6fc1adc
|
||||
@@ -494,7 +494,7 @@ F www/tclsqlite.tcl bb0d1357328a42b1993d78573e587c6dcbc964b9
|
||||
F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
|
||||
F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b
|
||||
F www/whentouse.tcl fc46eae081251c3c181bd79c5faef8195d7991a5
|
||||
P f3c3412afa95e7e4b2e6477718785b51f5352c39
|
||||
R be1ade13052f97e4c5360ea8823361db
|
||||
P 6e19ef758207cedd6db8b2796ef5d4d688cc0b62
|
||||
R 5b955388b5718234e99bb751cff2d291
|
||||
U drh
|
||||
Z acf5b62f956d717ae98df8f752c497d0
|
||||
Z eaf7c05ab3e15bb90bfa5a13a327e560
|
||||
|
||||
@@ -1 +1 @@
|
||||
6e19ef758207cedd6db8b2796ef5d4d688cc0b62
|
||||
dd48a31e671de09f59661b2ba1a20e7b9f09099a
|
||||
@@ -1773,10 +1773,24 @@ int sqlite3VdbeSerialTypeLen(u32 serial_type){
|
||||
|
||||
/*
|
||||
** If we are on an architecture with mixed-endian floating
|
||||
*** points (ex: ARM7) then swap the lower 4 bytes with the
|
||||
** points (ex: ARM7) then swap the lower 4 bytes with the
|
||||
** upper 4 bytes. Return the result.
|
||||
**
|
||||
** For most (sane) architectures, this is a no-op.
|
||||
** For most architectures, this is a no-op.
|
||||
**
|
||||
** (later): It is reported to me that the mixed-endian problem
|
||||
** on ARM7 is an issue with GCC, not with the ARM7 chip. It seems
|
||||
** that early versions of GCC stored the two words of a 64-bit
|
||||
** float in the wrong order. And that error has been propagated
|
||||
** ever since. The blame is not necessarily with GCC, though.
|
||||
** GCC might have just copying the problem from a prior compiler.
|
||||
** I am also told that newer versions of GCC that follow a different
|
||||
** ABI get the byte order right.
|
||||
**
|
||||
** Developers using SQLite on an ARM7 should compile and run their
|
||||
** application using -DSQLITE_DEBUG=1 at least once. With DEBUG
|
||||
** enabled, some asserts below will ensure that the byte order of
|
||||
** floating point values is correct.
|
||||
*/
|
||||
#ifdef SQLITE_MIXED_ENDIAN_64BIT_FLOAT
|
||||
static double floatSwap(double in){
|
||||
|
||||
Reference in New Issue
Block a user