mirror of
https://github.com/MariaDB/server.git
synced 2025-01-15 19:42:28 +01:00
MDEV-34970 Vector search fails to compile on s390x
add missing casts to float4store/float8store for bigendian. fix a typo in float4store() usage remove unnecessary one-byte-at-time appends
This commit is contained in:
parent
3c6e836110
commit
a471389d07
2 changed files with 4 additions and 7 deletions
|
@ -16,7 +16,7 @@
|
|||
/*
|
||||
Data in big-endian format.
|
||||
*/
|
||||
#define float4store(T,A) do { *(T)= ((uchar *) &A)[3];\
|
||||
#define float4store(T,A) do { *((T)+0)=(char) ((uchar *) &A)[3];\
|
||||
*((T)+1)=(char) ((uchar *) &A)[2];\
|
||||
*((T)+2)=(char) ((uchar *) &A)[1];\
|
||||
*((T)+3)=(char) ((uchar *) &A)[0]; } while(0)
|
||||
|
@ -28,7 +28,7 @@
|
|||
((uchar*) &def_temp)[3]=(M)[0];\
|
||||
(V)=def_temp; } while(0)
|
||||
|
||||
#define float8store(T,V) do { *(T)= ((uchar *) &V)[7];\
|
||||
#define float8store(T,V) do { *((T)+0)=(char) ((uchar *) &V)[7];\
|
||||
*((T)+1)=(char) ((uchar *) &V)[6];\
|
||||
*((T)+2)=(char) ((uchar *) &V)[5];\
|
||||
*((T)+3)=(char) ((uchar *) &V)[4];\
|
||||
|
|
|
@ -179,11 +179,8 @@ String *Item_func_vec_fromtext::val_str(String *buf)
|
|||
goto error_format;
|
||||
|
||||
char f_bin[4];
|
||||
float4store(&f_bin, f);
|
||||
buf->append(f_bin[0]);
|
||||
buf->append(f_bin[1]);
|
||||
buf->append(f_bin[2]);
|
||||
buf->append(f_bin[3]);
|
||||
float4store(f_bin, f);
|
||||
buf->append(f_bin, sizeof(f_bin));
|
||||
break;
|
||||
}
|
||||
default:
|
||||
|
|
Loading…
Reference in a new issue