Jonas Maebe
|
2c7a1b4e91
* fixed optimisation from r25067 for the generic case where a signed value
|
před 11 roky |
sergei
|
04eb925776
* tcgtypeconvnode.second_int_to_int: disabled optimization from r25067 for m68k, because reg_cgsize() does not return expected values on that target.
|
před 11 roky |
nickysn
|
cb05907e18
* fixed the global function to nested procvar conversion in the i8086 far data
|
před 11 roky |
nickysn
|
4ab9c6f206
+ fixed tcgtypeconvnode.second_class_to_intf for i8086 far data memory models
|
před 11 roky |
nickysn
|
a17c04c3e0
* fixed array to pointer conversion in i8086 far data memory models
|
před 11 roky |
nickysn
|
e8b9d9bf41
* converted tcgtypeconvnode.second_nil_to_methodprocvar to the high level code
|
před 11 roky |
nickysn
|
187c2af20e
* tcgtypeconvnode.second_proc_to_procvar converted to the high level code
|
před 11 roky |
florian
|
0a7b795744
* fix for the regressions caused by r27417
|
před 11 roky |
florian
|
73cf0b62f2
* relaxed conditions for floats in int registers, this improved softfloat code significantly
|
před 11 roky |
nickysn
|
0aab7fcc9c
* fixed tcgtypeconvnode.second_cstring_to_pchar for i8086 far data memory models by using the high level code generator
|
před 11 roky |
nickysn
|
2644d7566c
* refactored tcgtypeconvnode.second_pointer_to_array to use
|
před 11 roky |
nickysn
|
bd75abb64b
+ fill the treference.segment in tcgtypeconvnode.second_pointer_to_array when
|
před 11 roky |
nickysn
|
a9f56d2714
* refactored tcgtypeconvnode.second_ansistring_to_pchar to use the high level
|
před 11 roky |
Jonas Maebe
|
d46c353849
* migrated JVM-specific second_nil_to_methodprocvar code to njvmcnv
|
před 11 roky |
Jonas Maebe
|
4065483a50
* completed thlcgobj.location_force_fpureg(), use it everywhere and removed
|
před 11 roky |
Jeppe Johansen
|
07b2982e77
Don't do ARM FoldShiftLdrStr peephole optimization if there's an offset in the reference.
|
před 11 roky |
florian
|
4d5119bf1c
* fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables
|
před 11 roky |
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.
|
před 12 roky |
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.
|
před 12 roky |
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()
|
před 12 roky |
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.
|
před 12 roky |
florian
|
19495439b1
* do not destroy the left operand in second_ansistring_to_pchar if it is a register
|
před 12 roky |
Jonas Maebe
|
5051453806
+ support for LOC_(C)MMREGISTER in hlcg
|
před 12 roky |
Jonas Maebe
|
5152c86932
* set the location size of load nodes of procsyms without methodpointer/
|
před 12 roky |
florian
|
5a81601565
* type casting could force pointers into sub registers, so handle them when converting the pointer to an array
|
před 12 roky |
paul
|
5d74e0578a
compiler: remove unused variables and unneeded assignments
|
před 12 roky |
florian
|
4d4561923e
* nil method pointers can be kept in registers
|
před 13 roky |
florian
|
d8161c185c
+ track usage of flags by using a new register RS_/NR_DEFAULTFLAGS
|
před 13 roky |
Jonas Maebe
|
edd42aa42a
* moved subsetref/reg and bit_set/test support from cgobj to hlcgobj for
|
před 13 roky |
Jonas Maebe
|
aee5380ae0
* merged trunk up to r20882
|
před 13 roky |