The sources of the Free Pascal compiler, RTL, packages and utilities. See https://www.freepascal.org/ for more info.
Go to file
sergei 0d96963459 * Do not promote integer comparison operations to native size if one side is a constant and its value is within range of opposite side. Instead, cast the constant to type of the opposite side.
Comparisons are already not promoted if sides are equally signed, but this wasn't true for "unsigned vs constant" case, because constants are preferably parsed as signed.
The change considerably improves generated code for i386 and even more considerably for m68k. Tested on i386-win32.

git-svn-id: trunk@28266 -
2014-07-25 21:40:22 +00:00
compiler * Do not promote integer comparison operations to native size if one side is a constant and its value is within range of opposite side. Instead, cast the constant to type of the opposite side. 2014-07-25 21:40:22 +00:00
ide * add possibility of overriding the disabled VESA driver using /VESA 2014-05-17 16:31:51 +00:00
installer * package openssl supported for OS/2 now 2014-05-03 22:35:50 +00:00
packages * fixes from José Mejuto, mantis #26352 generating a parameter if the tlb says the param is there but the string is empty in the tlb + small cleanups 2014-07-20 14:49:37 +00:00
rtl i386: added signed 64bit div/mod helpers in assembly. we have some 64bit heavy code where a direct helper results in about 8-10% of performance advantage compared to going through the generic wrapper + the unsigned function 2014-07-24 21:06:23 +00:00
tests * Report all failed cases instead of halting at the first failure. 2014-07-24 12:05:33 +00:00
utils * pas2jni: Fixed enums, added equals() methods to objects, enums and sets. 2014-06-24 13:57:31 +00:00
.gitattributes Fix for Mantis #26482. 2014-07-20 15:47:18 +00:00
.gitignore
fpmake_add1.inc
fpmake_proc1.inc
fpmake.pp
Makefile * swap 2.6.4 and 2.6.2 in supported versions. Message now says 2.6.4, but 2.6.2 will work. 2014-04-20 15:06:47 +00:00
Makefile.fpc * swap 2.6.4 and 2.6.2 in supported versions. Message now says 2.6.4, but 2.6.2 will work. 2014-04-20 15:06:47 +00:00