sergei
|
f80ce76a69
+ MIPS: emulate "flags", i.e. support LOC_FLAGS location. This allows to generate differently optimized code for branching and for conversion to register, typically saving a register and instruction per compare.
|
преди 12 години |
nickysn
|
7a0bf4fa54
* the change in r25067 disabled for 16-bit and 8-bit CPUs, because it relies on reg_cgsize, which gives wrong results on archs that use GetNextReg()
|
преди 12 години |
sergei
|
f3a1c749fb
* tcgtypeconvnode.second_int_to_int: reuse 8 and 16-bit-sized register locations on targets with 32-bit-only registers when casting to larger size (except ShortInt to Word cast). This is possible because upper bits of such registers are always kept valid by code generators (see 'maybeadjustresult' method in cgcpu.pas). Removes a lot of useless register moves.
|
преди 12 години |
florian
|
19495439b1
* do not destroy the left operand in second_ansistring_to_pchar if it is a register
|
преди 12 години |
Jonas Maebe
|
5051453806
+ support for LOC_(C)MMREGISTER in hlcg
|
преди 12 години |
Jonas Maebe
|
5152c86932
* set the location size of load nodes of procsyms without methodpointer/
|
преди 12 години |
florian
|
5a81601565
* type casting could force pointers into sub registers, so handle them when converting the pointer to an array
|
преди 12 години |
paul
|
5d74e0578a
compiler: remove unused variables and unneeded assignments
|
преди 12 години |
florian
|
4d4561923e
* nil method pointers can be kept in registers
|
преди 13 години |
florian
|
d8161c185c
+ track usage of flags by using a new register RS_/NR_DEFAULTFLAGS
|
преди 13 години |
Jonas Maebe
|
edd42aa42a
* moved subsetref/reg and bit_set/test support from cgobj to hlcgobj for
|
преди 13 години |
Jonas Maebe
|
aee5380ae0
* merged trunk up to r20882
|
преди 13 години |
florian
|
111d05c68f
o patch by Alexander Shishkin, resolves #20409
|
преди 14 години |
Jonas Maebe
|
c22394a9f4
* converted second_array_to_pointer() to thlcg
|
преди 14 години |
Jonas Maebe
|
7f22a2f223
+ support for range checking calculations with hlcgobj
|
преди 14 години |
Jonas Maebe
|
979f55e1db
+ support for procedural variables for the JVM target
|
преди 14 години |
Jonas Maebe
|
085d0efead
* some fixes for fake procvar support
|
преди 14 години |
Jonas Maebe
|
6857dde33e
+ shortstring support for the JVM target (including accessing character 0 as
|
преди 14 години |
Jonas Maebe
|
aa1f299a17
+ added hook for "individual value to open array of one element"-conversion,
|
преди 14 години |
Jonas Maebe
|
d1a1d30e04
* unless compiled with -dnounsupported, the compiler will now accept not
|
преди 14 години |
Jonas Maebe
|
0e87627218
+ gethltemp() to allocate a temp specifying full type information even
|
преди 14 години |
Jonas Maebe
|
e56ad62f09
* second_real_to_real() converted to hlcg (in so far possible, no MM support)
|
преди 14 години |
florian
|
918909c65d
* fix building on powerpc/powerpc64/mips/mipsel
|
преди 14 години |
florian
|
f5694da7bc
* OS_INT => OS_32
|
преди 14 години |
florian
|
f419966f06
+ generic second_int_to_bool, depends on OP_OR setting flags
|
преди 14 години |
Jonas Maebe
|
97f9157a7a
* convert LOC_FLAGS/LOC_JUMP to cbool value in bool_to_bool conversion,
|
преди 15 години |
Jonas Maebe
|
57bd6d2685
+ merged nestedprocvars branch
|
преди 15 години |
Jonas Maebe
|
85984c2d8f
* insert proper type conversions when optimising logical operations and
|
преди 15 години |
Jonas Maebe
|
d1538ab023
o added ARM VPFv2/VFPv3 support:
|
преди 16 години |
florian
|
cc622779c9
* set size of nil constants casted to method pointers correctly, first part of resolving #10684
|
преди 16 години |