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