florian
|
1843ed59b5
* set p to a valid instruction
|
12 gadi atpakaļ |
florian
|
ce9398f8d8
* do not reuse register on x86 either
|
12 gadi atpakaļ |
Jonas Maebe
|
ee0d80ac19
* force use of real2str.inc after r25888 because it doesn't compile (yet?)
|
12 gadi atpakaļ |
florian
|
f132a804d6
+ handle 32 bit references on x86-64 so lea can be used for 32 bit arithmetics
|
12 gadi atpakaļ |
florian
|
7fc1d70e49
* do reg2=reg1*const by lea if possible
|
12 gadi atpakaļ |
florian
|
a16ceb6cdf
* replace lea by add if possible
|
12 gadi atpakaļ |
florian
|
80f8f66c6e
* set file positions correctly in PeepHoleOptPass1
|
12 gadi atpakaļ |
florian
|
4148637c8c
* fold mov/lea/mov as well if possible
|
12 gadi atpakaļ |
florian
|
524cde8140
+ MatchReference
|
12 gadi atpakaļ |
florian
|
440cb33e80
* continue to use lea to adjust the stack pointer, it is the recommended way
|
12 gadi atpakaļ |
florian
|
5eb578a44c
* generate sub instead of add from lea if appropriate
|
12 gadi atpakaļ |
florian
|
f56d2d4b09
* be able to replace lea by add when spilling
|
12 gadi atpakaļ |
florian
|
d575a435c3
* some debugging infrastructure
|
12 gadi atpakaļ |
florian
|
bfbb0c5b9d
* optimize mov/lea
|
12 gadi atpakaļ |
florian
|
3c58cad96b
* make use of lea if possible
|
12 gadi atpakaļ |
florian
|
945b318012
+ get rid of unnecessary 64 bit conversions too if one of the operands is 8 or 16 bit
|
12 gadi atpakaļ |
florian
|
d201bcb1cd
* get rid of 64 bit operations on 64 bit targets as well if possible
|
12 gadi atpakaļ |
florian
|
c8743c4826
* support 32 bit operations on x86-64 in the code generator
|
12 gadi atpakaļ |
Jonas Maebe
|
dad15f2843
* fixed test for double precision platforms after r25888
|
12 gadi atpakaļ |
Jonas Maebe
|
96ac477b96
* part of r25888, forgot to commit
|
12 gadi atpakaļ |
Jonas Maebe
|
85059f79fe
* readded halt(1) temporarily removed for testing and accidentally committed
|
12 gadi atpakaļ |
Jonas Maebe
|
4becf1f3c1
+ tests for mantis #23196 and #25122, already fixed by r25888
|
12 gadi atpakaļ |
Jonas Maebe
|
21eeec9981
+ re-implementation of real->string and string->real conversion routines
|
12 gadi atpakaļ |
Jonas Maebe
|
7b97752d0b
- removed commented out duplicate thlcg.getmmregister()
|
12 gadi atpakaļ |
nickysn
|
8bfe2a56dd
* optimized SAR by 31 to use only one SAR instruction in tcg8086.a_op_const_reg
|
12 gadi atpakaļ |
sergei
|
ca445577ff
- Linux RTL: MIPS no longer needs the softfloat code, don't compile it.
|
12 gadi atpakaļ |
nickysn
|
f288859fba
* i386 optimization - remove the test/or %y, %y instruction in the sequence:
|
12 gadi atpakaļ |
sergei
|
66e82f1655
+ i386: generate optimized code for 64-bit arithmetic shifts by constant amount. Shifts by 63 and by less than 32 take just two instructions, shifts by 32..62 bits are done with 3 instructions.
|
12 gadi atpakaļ |
Jonas Maebe
|
e219b8387e
* no longer support building with 2.6.0 (mainly because 2.6.0 doesn't generate
|
12 gadi atpakaļ |
sergei
|
486a7ef81e
* tx86inlinenode.second_popcnt: use emit_ref_reg instead of appending instruction directly, this provides proper PIC handling of the reference. emit_reg_reg part is not strictly necessary, but done for consistency.
|
12 gadi atpakaļ |