fpc/compiler/arm
masta 0f40429389 Improve handling of set operations with constant values on ARM
tarmaddnode.second_cmpsmallset always forced a value into a register
even when it could be represented as a constant, resulting in wasted
registers.

mov r1, #5
cmp r0, r1

If possible we'll now create:
cmp r0, #5

git-svn-id: trunk@22366 -
2012-09-10 12:37:50 +00:00
..
aasmcpu.pas * the improved arm optimizer might move instructions around so the old hacky test if a label with its data has been already embedded into the code by checking if the offset is 0 does not work anymore so a new field for tai_label has been introduced for this purpose 2012-09-06 15:12:17 +00:00
agarmgas.pas * pass march to GNU AS for cpu_armv6 and cpu_armv7 2012-07-23 20:20:17 +00:00
aoptcpu.pas * workaround for broken in operator 2012-09-05 15:00:04 +00:00
aoptcpub.pas * set MaxOps to 4 for the optimizer because fpc generates now mla instructions 2012-08-17 12:38:59 +00:00
aoptcpuc.pas
aoptcpud.pas
armatt.inc + patch by Bernd to add the push/pop mnemonic for arm/thumb-2, resolves #22041 2012-05-15 18:52:09 +00:00
armatts.inc + patch by Bernd to add the push/pop mnemonic for arm/thumb-2, resolves #22041 2012-05-15 18:52:09 +00:00
armins.dat + patch by Bernd to add the push/pop mnemonic for arm/thumb-2, resolves #22041 2012-05-15 18:52:09 +00:00
armnop.inc + support for nop, msr and mrs instructions 2009-01-26 14:18:42 +00:00
armop.inc + patch by Bernd to add the push/pop mnemonic for arm/thumb-2, resolves #22041 2012-05-15 18:52:09 +00:00
armreg.dat + support for the ARM hard float EABI on Linux (patch by Peter Green): 2012-03-29 20:50:09 +00:00
armtab.inc + support for nop, msr and mrs instructions 2009-01-26 14:18:42 +00:00
cgcpu.pas * BsrX(0) should return 255 instead of $ffffffff 2012-09-04 15:16:59 +00:00
cpubase.pas Introduce a version of MatchInstruction for multiple instructions 2012-08-24 15:54:36 +00:00
cpuinfo.pas * patch by Jeppe Johansen: Thumb2-only targets don't support the BLX <label>, and have to use BL <label>, resolves #22770 2012-09-04 14:57:26 +00:00
cpunode.pas + take advantage of the mla instruction when calculating array offsets 2012-05-23 20:48:26 +00:00
cpupara.pas + introduce cstylearrayofconst because pocall_mwcall was forgotten at several places 2012-08-05 08:48:23 +00:00
cpupi.pas * start with a qword aligned frame pointer to enable more ldrd/strd optimizations 2012-08-11 15:12:19 +00:00
cputarg.pas + some generic changes preparing for darwin/arm support 2008-10-02 15:10:13 +00:00
hlcgcpu.pas * create/destroy also the high level code generator for all architectures, 2011-08-20 07:21:16 +00:00
itcpugas.pas
narmadd.pas Improve handling of set operations with constant values on ARM 2012-09-10 12:37:50 +00:00
narmcal.pas + support for the ARM hard float EABI on Linux (patch by Peter Green): 2012-03-29 20:50:09 +00:00
narmcnv.pas + a lot missing flag allocs/deallocs added 2012-08-23 08:54:52 +00:00
narmcon.pas * fixed ARM and MIPS compilation after r14912 2010-02-18 21:19:17 +00:00
narminl.pas + a lot missing flag allocs/deallocs added 2012-08-23 08:54:52 +00:00
narmmat.pas + a lot missing flag allocs/deallocs added 2012-08-23 08:54:52 +00:00
narmmem.pas + take advantage of the mla instruction when calculating array offsets 2012-05-23 20:48:26 +00:00
narmset.pas + a lot missing flag allocs/deallocs added 2012-08-23 08:54:52 +00:00
pp.lpi.template
raarm.pas o patch by Jeppe Johansen to fix mantis #17472: 2010-12-24 15:54:39 +00:00
raarmgas.pas Fix ARM ASM-reader for MVN/CMP/CMN/TST/TEQ 2012-07-15 01:03:08 +00:00
rarmcon.inc + support for the ARM hard float EABI on Linux (patch by Peter Green): 2012-03-29 20:50:09 +00:00
rarmdwa.inc o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
rarmnor.inc o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
rarmnum.inc + support for the ARM hard float EABI on Linux (patch by Peter Green): 2012-03-29 20:50:09 +00:00
rarmrni.inc + support for the ARM hard float EABI on Linux (patch by Peter Green): 2012-03-29 20:50:09 +00:00
rarmsri.inc + support for the ARM hard float EABI on Linux (patch by Peter Green): 2012-03-29 20:50:09 +00:00
rarmsta.inc o added ARM VPFv2/VFPv3 support: 2009-12-03 22:46:30 +00:00
rarmstd.inc + support for the ARM hard float EABI on Linux (patch by Peter Green): 2012-03-29 20:50:09 +00:00
rarmsup.inc + support for the ARM hard float EABI on Linux (patch by Peter Green): 2012-03-29 20:50:09 +00:00
rgcpu.pas Consolidate do_spill_read/do_spill_written on arm 2012-07-12 01:11:23 +00:00