Sven/Sarah Barth
|
c59b6a5d8d
* High() and Length() for dynamic arrays deal with sizesinttype instead of ossinttype (on AVR the former is 16-bit while the later is 8-bit thus this is an important distinction)
|
3 ani în urmă |
J. Gareth "Curious Kit" Moreton
|
d5a104f493
Fixed Internal Error 2020120501 number clash
|
3 ani în urmă |
florian
|
316f2429f0
* do not omit location_force_reg on second operand of sar/ro* if
|
4 ani în urmă |
florian
|
01178532e5
* sar*/ro* do not call location_force_reg if not needed
|
4 ani în urmă |
yury
|
64c586b86d
* Removed/ifdefed lots of unused variables.
|
4 ani în urmă |
florian
|
6e4997265c
+ min/max intrinsics for internal use by the compiler
|
4 ani în urmă |
florian
|
637976e83f
* patch by Marģers to unify internal error numbers, resolves #37888
|
4 ani în urmă |
nickysn
|
0f6ab0de17
* handle LOC_(C)SUBSETREG/REF in second_NegNot_assign
|
5 ani în urmă |
nickysn
|
5aaf863d56
* only call cg64.a_XXX_loc for LOC_(C)REFERENCE and LOC_(C)REGISTER locations in
|
5 ani în urmă |
florian
|
cfe2d94b25
* fix LLVM after r45177
|
5 ani în urmă |
florian
|
9e0337f248
* do not use an extra register in tcginlinenode.second_IncDec if not needed
|
5 ani în urmă |
florian
|
6c71fd461d
* avoid internalerror for dec/inc(...,v) with v>high(int64), resolves #35298
|
5 ani în urmă |
florian
|
70a836c4a2
* first part of merging parts of Jeppe's intrinsics patch, mainly r31135
|
5 ani în urmă |
florian
|
f7a052f884
+ inline high(<dyn. array>), resolves #28536
|
5 ani în urmă |
Jonas Maebe
|
04d295f186
* first step towards supporting 32 bit targets with the LLVM code generator:
|
6 ani în urmă |
Jonas Maebe
|
122d0d36d6
+ volatile() expression that marks an expression as volatile
|
6 ani în urmă |
Károly Balogh
|
6629e72d79
m68k: reinstate the inc/dec tempregister type hack again in an isolated way (it was removed in r40385, as it was breaking llvm target)
|
6 ani în urmă |
Jonas Maebe
|
026d06cffb
- reverted r39188, as this hack removes the type correctness of the
|
6 ani în urmă |
Károly Balogh
|
bbbaa39d79
ncginl: another approach to fix the same issue #39184 supposed to address. keep left.resultdef, but try to make the target def always ordinal of an equal size, so it ends up in a data register on m68k
|
7 ani în urmă |
Károly Balogh
|
3286623c3c
ncginl: revert the previous commit, it seems to cause some issues on other CPUs
|
7 ani în urmă |
Károly Balogh
|
42efddc481
ncginl: in inc/dec, do not use left.resultdef as the dest to force a register location, because if left is a pointer, then an ordinal value might get forced into an address register on m68k, which results in a lot of unnecessary register shuffling to complete the operation
|
7 ani în urmă |
Jonas Maebe
|
4686f61002
* keep track of the temp position separately from the offset in references,
|
7 ani în urmă |
florian
|
4752b0ef96
+ tinlinenode calls cpu specific routines for unknown inline numbers
|
7 ani în urmă |
florian
|
8eec29b139
+ enable support for a processor specific frac function
|
8 ani în urmă |
nickysn
|
efc5e339d0
* use an enum instead of integer constants to represent inline numbers
|
8 ani în urmă |
florian
|
b1dff29cbf
* removed unused units
|
8 ani în urmă |
nickysn
|
d8ec0eff8e
+ implemented inline code generation for 64-bit sar (the SarInt64 intrinsic) on
|
8 ani în urmă |
nickysn
|
ec11864272
* use a native sized int register for the shift count in in_sar_assign_x_y,
|
8 ani în urmă |
nickysn
|
599b9e73de
* determine correctly whether operand size is 32 or 64 bits for
|
8 ani în urmă |
nickysn
|
f514657e45
+ implemented the sar/shl/shr/rol/ror inline modify-in-place nodes; the actual
|
8 ani în urmă |