svenbarth
|
8287773b16
Reverted revision 33036. This feature is too controverse to be left in.
|
9 năm trước cách đây |
svenbarth
|
ed94ca4b24
Add support for IfThen() instrinsic that works like the if-statement in that it evaluates only the expression that is indeed executed.
|
9 năm trước cách đây |
Jonas Maebe
|
8917633199
* implement sizeof/typeof completely at the node level, based on
|
9 năm trước cách đây |
svenbarth
|
74c79803f7
Extend tlocalvarsym with the ability to not register it if needed.
|
10 năm trước cách đây |
florian
|
70b8789262
o basic extended pascal support:
|
10 năm trước cách đây |
Jonas Maebe
|
2778bf55c7
* add "doregister" parameter to torddef.create, and don't register temporary
|
10 năm trước cách đây |
florian
|
f00a55ae08
+ tinlinenode.createintern
|
10 năm trước cách đây |
Jonas Maebe
|
67b8aceaee
* synchronized with privatetrunk till r30095
|
10 năm trước cách đây |
Jonas Maebe
|
68303b8df1
* add explicit check that argument of sizeof(x) is a simple load node (this
|
10 năm trước cách đây |
florian
|
0dfbba86f3
* properly firstpass nodes when inc(...) is converted into ...:=...+x, resolves #27471
|
10 năm trước cách đây |
florian
|
c9ba9665dd
* set nf_internal for if nodes generated by assert, prevent warning for assert(true); resolves #26467
|
10 năm trước cách đây |
nickysn
|
a9e1419ee3
* extracted the pass 1 handling of inc/dec to a virtual method first_IncDec
|
11 năm trước cách đây |
pierre
|
a77735d7af
Fix bug in in_const_swap_qword handling
|
11 năm trước cách đây |
Jonas Maebe
|
e8026ad8d3
* fixed the resultdef of length() intrinsic: it's ossinttype rather than
|
11 năm trước cách đây |
sergei
|
04d8e8a5dc
* On 64-bit targets, handle abs(int64) internally, using the same code as for abs(longint), i.e. without branching. Both generic and x86-specific pass 2 code is already suitable for different operand sizes, only type checking needs removal of excessive conversions to 32 bits.
|
11 năm trước cách đây |
svenbarth
|
34394d6925
Fix for Mantis #26180. Accept undefineddef as first parameter type of an Assert if it is used inside a generic.
|
11 năm trước cách đây |
sergei
|
274c2fc82f
* handle_ln_const: if/else branches were swapped, correct values are: ln(0)=-Inf and ln(-#)=NaN.
|
11 năm trước cách đây |
sergei
|
743326dc70
* abs(): when translated to generic fpc_abs_real() helper, typecast result back to original precision, similar to how it is done for sqr and sqrt. Fixes compilation on m68k after r27808 (m86k looks like the only target still needing this generic handling).
|
11 năm trước cách đây |
sergei
|
37625211f5
* Fixed sqrt procedure selection on arm-wince after r27809.
|
11 năm trước cách đây |
sergei
|
22e099d000
* sqrt(real): for targets with emulated floating point, invoke float64_sqrt or float32_sqrt from softfpu code. Testing on ARM CPU shows that float64_sqrt executes about twice faster and offers better accuracy than fpc_sqrt_real from genmath.inc.
|
11 năm trước cách đây |
sergei
|
fc5f45f65c
* sqr(real) and sqrt(real): remove typeconv node inserted by initial call processing (see explanation in comments), allowing these functions to be evaluated using precision of argument. In particular, sqrt(single) and sqrt(double) now emit 'sqrtss' and 'sqrtsd' instructions on x86 targets with -Cfsse3. Non-x86 targets already have the necessary support in code generators.
|
11 năm trước cách đây |
florian
|
d88d644925
+ support for FMA intrinsic: if there is no hardware support, the compiler throws an error.
|
11 năm trước cách đây |
svenbarth
|
256c852631
Fix for Mantis #23776.
|
11 năm trước cách đây |
Jonas Maebe
|
d452686c39
* moved pbestrealtype from symdef to symcpu
|
11 năm trước cách đây |
Jonas Maebe
|
b57c95043f
+ support overriding tdef/tsym methods with target-specific functionality:
|
11 năm trước cách đây |
Jonas Maebe
|
0edb7b2288
* fixed r27320 for darwin, as its mangled names get prefixed with '_'
|
11 năm trước cách đây |
svenbarth
|
a08e8ff982
Fix for Mantis #25929
|
11 năm trước cách đây |
florian
|
ab3f5744e0
* skip dec/inc type checking in unspecialized generic methods, resolves #25603
|
11 năm trước cách đây |
florian
|
e841027a48
* fixes handling of typed files in iso mode
|
11 năm trước cách đây |
nickysn
|
e1332304ef
* when converting Hi() to a shr node, convert the right shr const parameter to
|
11 năm trước cách đây |