florian
|
d39b9059d6
* improve simplification of arithmetic nodes, based on a patch by Jeppe Johansen
|
11 jaren geleden |
svenbarth
|
798bb91e90
Extract tdef.is_related plus its overrides in tobjectdef, trecorddef and tstringdef into a new function def_is_related in unit defcmp.
|
11 jaren geleden |
sergei
|
dac8cbcefc
* Handle assigned(x) expressions entirely in first pass by converting them to "x<>nil", indicate that procedure variables should not be called by setting nf_load_procvar flag (which is already used with typeconvnode for exactly the same purpose). This allows to generate better code when assigned(x) is used on right side of assigments. Mantis #24572.
|
12 jaren geleden |
Jonas Maebe
|
8d1090269e
* synchronised with trunk r25259
|
12 jaren geleden |
Jonas Maebe
|
fb8fb29574
* record/use the code page of string constants typecasted to an ansistring
|
12 jaren geleden |
Jonas Maebe
|
29132f45b7
* synchronised with trunk up to r25167 (fixes glib compilation via r25164,
|
12 jaren geleden |
Jonas Maebe
|
1a560e9875
* when concatenating ansistrings, do not map CP_NONE (rawbytestring) to
|
12 jaren geleden |
svenbarth
|
6b34c84704
nadd.pas, taddnode.create_internal:
|
12 jaren geleden |
svenbarth
|
fc79d47b09
Fix for Mantis #24651. Allow pointer comparison for internal expressions (in this case check for valid VMT).
|
12 jaren geleden |
nickysn
|
d387182bd6
* when doing a pointer comparison on i8086, don't cast a far pointer to a near one (pchar), but use a far one instead
|
12 jaren geleden |
florian
|
0e41df598e
* merge i8086 branch by Nikolay Nikolov
|
12 jaren geleden |
nickysn
|
0473cbf70f
* refactored the add node type check pass to handle all native integer sizes with the same common code, without ifdefs
|
12 jaren geleden |
nickysn
|
949210e808
+ added min and max functions for Tconstexprint
|
12 jaren geleden |
florian
|
364f170765
* cosmetic formatting changes
|
12 jaren geleden |
florian
|
88455bbb02
* 32 bit comparison normally result in LOC_FLAGS on 16 bit CPUs
|
12 jaren geleden |
nickysn
|
d72d496478
* enable cpuneedsmulhelper for the 32-bit multiplication
|
12 jaren geleden |
nickysn
|
ded6b87acc
16-bit and 8-bit ALU fixes for int types in taddnode.pass_typecheck_internal
|
12 jaren geleden |
nickysn
|
e4d66dd95c
i8086 fix for taddnode.pass_typecheck_internal and real types
|
12 jaren geleden |
Jeppe Johansen
|
a8f9b0dac4
Added initial support for the Cortex-M4F FPv4_S16 FPU
|
13 jaren geleden |
Jonas Maebe
|
33f5de990d
* fixed indentation
|
13 jaren geleden |
Jonas Maebe
|
a2426178dc
* don't insert type conversions in add nodes if both arguments are constant
|
13 jaren geleden |
Jonas Maebe
|
06b17111da
* also recognize scurrency as an "originally was a 64 bit value" in
|
13 jaren geleden |
Jonas Maebe
|
834026bfb5
* synchronised with trunk up to r21067
|
13 jaren geleden |
paul
|
a26bc50ca6
compiler: change ShortString->(Some)String and AnsiString->(Some)String overload precedence both for variables and string constants, change unicode constant type from widestring to unicodestring (Delphi compatibility)
|
13 jaren geleden |
Jonas Maebe
|
8e3d7fe8d3
* fixed genmultistringadd() optimization for jvm and enabled it
|
13 jaren geleden |
Jonas Maebe
|
aee5380ae0
* merged trunk up to r20882
|
13 jaren geleden |
Jonas Maebe
|
d1acb76df8
* don't replace "expr1 or expr1" or "expr1 and expr1" with just "expr1"
|
13 jaren geleden |
sergei
|
eda5511ef9
* Don't widen boolean operands of taddnode if they will be converted to pasbool8 immediately thereafter, doing so only causes generation of useless code. Mantis #20843.
|
13 jaren geleden |
Jonas Maebe
|
e2b5ba756d
* when comparing two boolean values, convert both to pasbool8 so
|
13 jaren geleden |
florian
|
c12a4989d0
+ use cpurox define in the compiler for CPUs having internal ror/rol support
|
13 jaren geleden |