diff --git a/internal/c/c_compiler/c_compiler.7z b/internal/c/c_compiler/c_compiler.7z index eb77fba8a..a78951d20 100644 Binary files a/internal/c/c_compiler/c_compiler.7z and b/internal/c/c_compiler/c_compiler.7z differ diff --git a/internal/c/libqb.cpp b/internal/c/libqb.cpp index 5311d15a7..51a196ea9 100644 --- a/internal/c/libqb.cpp +++ b/internal/c/libqb.cpp @@ -27,6 +27,11 @@ int32 disableEvents=0; //This next block used to be in common.cpp; put here until I can find a better //place for it (LC, 2018-01-05) + +uint32 rotateLeft(uint32 word,uint32 shift){ +return (word << shift) | (word >> (32 - shift)); +} + #ifndef QB64_WINDOWS void Sleep(uint32 milliseconds){ static uint64 sec,nsec; @@ -38,10 +43,6 @@ int32 disableEvents=0; nanosleep (&ts, NULL); } -// uint32 _lrotl(uint32 word,uint32 shift){ -// return (word << shift) | (word >> (32 - shift)); -// } - void ZeroMemory(void *ptr,int64 bytes){ memset(ptr,0,bytes); } @@ -8936,8 +8937,7 @@ 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=((style << lineclip_skippixels) | (style >> (32 - lineclip_skippixels))); + style=rotateLeft(style,lineclip_skippixels); if (lineclip_draw){ l=abs(lineclip_x1-lineclip_x2); @@ -8954,8 +8954,7 @@ 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=((style << 1) | (style >> 31))&1){ + if ((style=rotateLeft(style,1))&1){ pset(lineclip_x1,lineclip_y1,col); } @@ -8974,8 +8973,7 @@ 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=((style << 1) | (style >> 31))&1){ + if ((style=rotateLeft(style,1))&1){ pset(lineclip_x1,lineclip_y1,col); } lineclip_y1+=mi;