florian
|
8c5606b41d
+ support mmx shifting
|
há 7 anos atrás |
florian
|
c1de51454c
ti386shlshrnode.second_64bit:
|
há 7 anos atrás |
nickysn
|
af235cae86
* use TEST CL,32 instead of TEST ECX,32 in the beginning of a 64-bit shl/shr
|
há 8 anos atrás |
nickysn
|
d7b8d8dd54
* don't emit the "SUB ECX,32" instruction on i386, when doing a 64-bit shift by
|
há 8 anos atrás |
nickysn
|
7e8c89435f
* avoid the AND instruction in the i386 shr64/shl64 code, by using TEST+JZ,
|
há 8 anos atrás |
nickysn
|
6580dfee39
* generate better i386 code for 64-bit shl/shr, by masking the shift count by
|
há 8 anos atrás |
sergei
|
5356f17fa5
* i386: switch the div/mod node to shared code, leaving in place the specific optimization for division by power of 2.
|
há 11 anos atrás |
sergei
|
ed46a07f62
* Using x86-specific capability of shifting with carry flag helps to reduce amount of instructions.
|
há 11 anos atrás |
sergei
|
92cf25b9a5
* Reworked i386 division by constant optimization to reuse code from powerpc64. The algorithm is slightly different, signed version is one instruction shorter, unsigned one is one instruction longer (typically). The new algorithm is easily scalable for x86_64 target, unlike the old one.
|
há 11 anos atrás |
Jonas Maebe
|
edd42aa42a
* moved subsetref/reg and bit_set/test support from cgobj to hlcgobj for
|
há 13 anos atrás |
Jonas Maebe
|
9ec3cc2022
* fixed sign of location.size for divmodn, 64 shlshrn and for muln
|
há 17 anos atrás |
daniel
|
9adb202a92
* Rework the constexprint to allow operations from low(int64) to high(qword).
|
há 18 anos atrás |
peter
|
658c46b903
* remove tdictionary and tindexarray
|
há 19 anos atrás |
florian
|
85d63d9fa9
* settings refactored
|
há 19 anos atrás |
peter
|
3078a1927f
* remove ttype
|
há 19 anos atrás |
peter
|
b7fe6797bf
Merged revisions 2921-2922,2925 via svnmerge from
|
há 19 anos atrás |
peter
|
588cccb3ca
* remove some obsolete i386 specific code
|
há 19 anos atrás |
peter
|
d8dc5679e3
* aktcputype and aktoptimizecputype was missing in the previous optimization commits
|
há 19 anos atrás |
peter
|
b6e35a200e
* rewrite of optimizer options
|
há 19 anos atrás |
peter
|
4bee83c736
* range check errors
|
há 19 anos atrás |
florian
|
bec0daebfa
+ optimized <dword> div <const dword>
|
há 19 anos atrás |
peter
|
5942d23b1b
* fix range error
|
há 19 anos atrás |
florian
|
3582108be1
* signed divisions with constants are always done without idiv
|
há 19 anos atrás |
peter
|
a3ab2053c9
* support multiple asmlabel types, renamed getlabel to
|
há 20 anos atrás |
fpc
|
790a4fe2d3
* log and id tags removed
|
há 20 anos atrás |
fpc
|
50778076c3
initial import
|
há 20 anos atrás |
peter
|
e417e34496
* truncate log
|
há 20 anos atrás |
peter
|
c95a859f0a
* generic tlocation
|
há 21 anos atrás |
peter
|
65c3ba277c
* ungetregister is now only used for cpuregisters, renamed to
|
há 21 anos atrás |
florian
|
8a9758c5e2
* logs truncated
|
há 21 anos atrás |