Jonas Maebe
|
cdfb23bf6c
* converted some leftovers in tcgtypeconvnode.second_int_to_int/
|
11 years ago |
Jeppe Johansen
|
07b2982e77
Don't do ARM FoldShiftLdrStr peephole optimization if there's an offset in the reference.
|
11 years ago |
florian
|
4d5119bf1c
* fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables
|
11 years ago |
svenbarth
|
76f6de5cf1
Refactor tobjectdef.find_implemented_interface out into unit defcmp so that the recently introduced cycle between symdef and defcmp can be broken again.
|
12 years ago |
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 years ago |
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 years ago |
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 years ago |
florian
|
19495439b1
* do not destroy the left operand in second_ansistring_to_pchar if it is a register
|
12 years ago |
Jonas Maebe
|
5051453806
+ support for LOC_(C)MMREGISTER in hlcg
|
12 years ago |
Jonas Maebe
|
5152c86932
* set the location size of load nodes of procsyms without methodpointer/
|
12 years ago |
florian
|
5a81601565
* type casting could force pointers into sub registers, so handle them when converting the pointer to an array
|
12 years ago |
paul
|
5d74e0578a
compiler: remove unused variables and unneeded assignments
|
12 years ago |
florian
|
4d4561923e
* nil method pointers can be kept in registers
|
13 years ago |
florian
|
d8161c185c
+ track usage of flags by using a new register RS_/NR_DEFAULTFLAGS
|
13 years ago |
Jonas Maebe
|
edd42aa42a
* moved subsetref/reg and bit_set/test support from cgobj to hlcgobj for
|
13 years ago |
Jonas Maebe
|
aee5380ae0
* merged trunk up to r20882
|
13 years ago |
florian
|
111d05c68f
o patch by Alexander Shishkin, resolves #20409
|
14 years ago |
Jonas Maebe
|
c22394a9f4
* converted second_array_to_pointer() to thlcg
|
14 years ago |
Jonas Maebe
|
7f22a2f223
+ support for range checking calculations with hlcgobj
|
14 years ago |
Jonas Maebe
|
979f55e1db
+ support for procedural variables for the JVM target
|
14 years ago |
Jonas Maebe
|
085d0efead
* some fixes for fake procvar support
|
14 years ago |
Jonas Maebe
|
6857dde33e
+ shortstring support for the JVM target (including accessing character 0 as
|
14 years ago |
Jonas Maebe
|
aa1f299a17
+ added hook for "individual value to open array of one element"-conversion,
|
14 years ago |
Jonas Maebe
|
d1a1d30e04
* unless compiled with -dnounsupported, the compiler will now accept not
|
14 years ago |
Jonas Maebe
|
0e87627218
+ gethltemp() to allocate a temp specifying full type information even
|
14 years ago |
Jonas Maebe
|
e56ad62f09
* second_real_to_real() converted to hlcg (in so far possible, no MM support)
|
14 years ago |
florian
|
918909c65d
* fix building on powerpc/powerpc64/mips/mipsel
|
14 years ago |
florian
|
f5694da7bc
* OS_INT => OS_32
|
14 years ago |
florian
|
f419966f06
+ generic second_int_to_bool, depends on OP_OR setting flags
|
14 years ago |
Jonas Maebe
|
97f9157a7a
* convert LOC_FLAGS/LOC_JUMP to cbool value in bool_to_bool conversion,
|
15 years ago |