1
1
Fork 0
mirror of https://github.com/QB64Official/qb64.git synced 2024-07-04 22:20:24 +00:00

_lrotl removal in libqb.cpp

_lrotl is defined elsewhere in the graphics routines.  By using a custom
QB64 version, it tosses definition errors with newer compiler versions.
Easiest fix:  Remove the custom _lrotl since it's only used a total of 3
times (all in the LINE routine), and do themath without the function
naturally.
This commit is contained in:
SteveMcNeill 2018-12-22 09:17:45 -05:00
parent 775e99b7ab
commit 035489def6

View file

@ -38,9 +38,9 @@ int32 disableEvents=0;
nanosleep (&ts, NULL);
}
uint32 _lrotl(uint32 word,uint32 shift){
return (word << shift) | (word >> (32 - shift));
}
// uint32 _lrotl(uint32 word,uint32 shift){
// return (word << shift) | (word >> (32 - shift));
// }
void ZeroMemory(void *ptr,int64 bytes){
memset(ptr,0,bytes);
@ -8936,7 +8936,8 @@ void qb32_line(float x1f,float y1f,float x2f,float y2f,uint32 col,uint32 style){
style=(style&65535)+(style<<16);
lineclip_skippixels&=15;
style=_lrotl(style,lineclip_skippixels);
//style=_lrotl(style,lineclip_skippixels);
style=((style << lineclip_skippixels) | (style >> (32 - lineclip_skippixels)));
if (lineclip_draw){
l=abs(lineclip_x1-lineclip_x2);
@ -8953,7 +8954,8 @@ void qb32_line(float x1f,float y1f,float x2f,float y2f,uint32 col,uint32 style){
while (l--){
if (y1f<0) lineclip_y1=y1f-0.5f; else lineclip_y1=y1f+0.5f;
if ((style=_lrotl(style,1))&1){
//if ((style=_lrotl(style,1))&1){
if (style=((style << 1) | (style >> 31))&1){
pset(lineclip_x1,lineclip_y1,col);
}
@ -8972,7 +8974,8 @@ void qb32_line(float x1f,float y1f,float x2f,float y2f,uint32 col,uint32 style){
l2++;
while (l2--){
if (x1f<0) lineclip_x1=x1f-0.5f; else lineclip_x1=x1f+0.5f;
if ((style=_lrotl(style,1))&1){
//if ((style=_lrotl(style,1))&1){
if (style=((style << 1) | (style >> 31))&1){
pset(lineclip_x1,lineclip_y1,col);
}
lineclip_y1+=mi;