florian
|
412dc6586f
* the writestr helper initializes the target string, so mark it as being written
|
11 years ago |
sergei
|
9ad98a2c4d
* Handle "SarInt64" always as internal procedure, introduced virtual method tinlinenode.first_sar that by default converts it into call to "fpc_sarint64" unless target CPU is 64-bit. This provides a point to insert target-specific optimizations.
|
11 years ago |
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 years ago |
florian
|
a2a405581c
* don't call the ansistring val variant for a zero based array if not necessary to avoid ansistring usage in embedded applications
|
12 years ago |
masta
|
b81f746e05
Inline Length(DynamicArray)
|
12 years ago |
Jonas Maebe
|
fb8fb29574
* record/use the code page of string constants typecasted to an ansistring
|
12 years ago |
sergei
|
87cfd86172
* Define SUPPORT_GET_FRAME for targets having "get_frame" as internal symbol (x86,arm and jvm, currently), removes need to enumerate these targets in every related conditional compilation directive and simplifies configuring this feature for other targets.
|
12 years ago |
sergei
|
cc8772cf92
* sizeof(x), typeof(x): if "x" is typenode, request GOT for PIC because a global VMT label will be loaded.
|
12 years ago |
florian
|
0968d095ed
* convert function like used new into a appropriate nodes only in pass_1 so proper error checking can be carried out, resolves #24495
|
12 years ago |
nickysn
|
a86cb5c600
+ far pointer fixes in the internal compiler handling of ptr(const,const)
|
12 years ago |
nickysn
|
b0f7786782
+ added support for special versions of near data pointers associated with a x86 segment register. They are supported on all x86 platforms: i8086, i386 and x86_64
|
12 years ago |
florian
|
0e41df598e
* merge i8086 branch by Nikolay Nikolov
|
12 years ago |
nickysn
|
3c6df5bedc
* use is_nativeuint() in ninl.get_str_int_func(), instead of the ifdef sequence
|
12 years ago |
nickysn
|
526c3b9c9b
* val, str and read/write(ln) now use is_oversizedint/ord to determine which helper function to use; this also clears the warnings that prevented compilation of the 64-bit targets
|
12 years ago |
nickysn
|
91038d6d0a
* prevent compilation warning due to function result not being set in tinlinenode.first_seg
|
12 years ago |
nickysn
|
be761ba232
* sequences that check for cpu64bitaddr made to also check for cpu32bitaddr instead of cpu32bitalu. this fixes ppcjvm compilation
|
12 years ago |
nickysn
|
917a1eb0f2
* the default Seg() handling moved to virtual methods, so that they can be overriden in the i8086 code generator
|
12 years ago |
nickysn
|
615d6e4a51
* internal compiler handling of Val() fixed for 16/8-bit CPUs
|
12 years ago |
nickysn
|
53ad3fc662
+ Str() handling in the compiler fixed for 16/8-bit CPU support
|
12 years ago |
nickysn
|
8fa9105151
+ 16-bit and 8-bit CPU support added in the internal handling of read/readln/write/writeln
|
12 years ago |
Jonas Maebe
|
e1e11f81e3
* fixed using readstr/writestr inside routines called from the parameter
|
12 years ago |
florian
|
d5985b4f0e
* patch by Christophe Staïesse to implement more ISO-like read behaviour in iso mode, resolves #24060
|
12 years ago |
nickysn
|
573ea10ef3
* fixed val when the 'code' parameter is the same size as the native CPU int type, but unsigned
|
12 years ago |
nickysn
|
fdf831b4c6
* i8086 fix in tinlinenode.pass_typecheck for trunc and round
|
12 years ago |
florian
|
b43b4bb455
+ pseudo procedure aligned: tells the compiler to assume that the given parameter is naturally aligned, counterpart of unaligned
|
12 years ago |
florian
|
d140c5b4ee
* handle inc/dec/pred/succ correctly with type parameters, resolves #23299
|
12 years ago |
florian
|
761fcca4ec
+ is_dynamicstring
|
12 years ago |
sergei
|
12ad6704f6
- Removed a number of unused variables, reduces noise at compilation.
|
12 years ago |
florian
|
9a5e64442f
+ support copy with two parameters, resolves #22964
|
13 years ago |
florian
|
ff12d63248
+ generic popcnt support
|
13 years ago |