florian
1eeeb309c7
* intial armv6m support, it is not working yet, constant pool insertation and conditional branch fixup is not working yet
...
git-svn-id: trunk@23682 -
2013-03-03 12:20:10 +00:00
florian
47d43750e4
* remove unused units from uses statements
...
git-svn-id: trunk@23306 -
2013-01-03 23:07:09 +00:00
florian
45383fd32d
+ a lot missing flag allocs/deallocs added
...
git-svn-id: trunk@22201 -
2012-08-23 08:54:52 +00:00
florian
ecb037ad79
+ tarminnode.pass_1 to set expectloc correctly
...
git-svn-id: trunk@22074 -
2012-08-13 15:03:35 +00:00
florian
33f287d320
+ tarminnode.in_smallset making use of tst
...
git-svn-id: trunk@22064 -
2012-08-11 22:10:45 +00:00
florian
c5ad1bce7b
* avoid uncessary zero extensions in case code
...
git-svn-id: trunk@21979 -
2012-07-28 20:09:21 +00:00
Jonas Maebe
b023627f6a
* converted tcgcasenode.pass_generate_code() to hlcgobj
...
o changed type of opsize field of tcgcasenode from tcgsize into tdef,
and fixed compilation of other code generator units after this change
git-svn-id: branches/jvmbackend@18339 -
2011-08-20 07:48:33 +00:00
florian
ffde44ea6e
* forgotten part of r18233
...
git-svn-id: trunk@18235 -
2011-08-16 22:44:50 +00:00
Jonas Maebe
7d459cf12a
* the compiler now explicitly keeps track of the minimally guaranteed
...
alignment for each memory reference (mantis #12137 , and
test/packages/fcl-registry/tregistry1.pp on sparc). This also
enables better code generation for packed records in many cases.
o several changes were made to the compiler to minimise the chances
of accidentally forgetting to set the alignment of memory references
in the future:
- reference_reset*() now has an extra alignment parameter
- location_reset() can now only be used for non LOC_(C)REFERENCE,
use location_reset_ref() for those (split the tloc enum so the
compiler can catch errors using range checking)
git-svn-id: trunk@12719 -
2009-02-08 13:00:24 +00:00
florian
c3475dddc0
* handle case ranges properly for unsigned types with a non-zero base, resolves #10009
...
git-svn-id: trunk@8974 -
2007-10-28 17:06:02 +00:00
daniel
9adb202a92
* Rework the constexprint to allow operations from low(int64) to high(qword).
...
+ Some initial work on a formaldef which also carries the typinfo of a parameter.
git-svn-id: trunk@7639 -
2007-06-13 07:41:18 +00:00
yury
e94277d5dc
* removed unneeded label.
...
* asm output beautification.
git-svn-id: trunk@5467 -
2006-11-24 13:20:32 +00:00
yury
70b5d41d5c
* optimized case jump table generation for ARM.
...
git-svn-id: trunk@5458 -
2006-11-23 00:55:16 +00:00
yury
187c71ac18
* fixed and enabled case jump table generation for ARM.
...
git-svn-id: trunk@5446 -
2006-11-22 12:16:33 +00:00
yury
257a76d6c8
* finally fixed case code generation for ARM.
...
git-svn-id: trunk@5437 -
2006-11-21 21:16:25 +00:00
yury
347af4dbe4
* fixed case code for ARM.
...
git-svn-id: trunk@5402 -
2006-11-16 13:07:32 +00:00
florian
3f0dfdcba4
* OP_SUB must set always the flags in case of case
...
git-svn-id: trunk@5400 -
2006-11-16 10:21:43 +00:00
florian
6ad8307653
+ better case code generation for arm
...
git-svn-id: trunk@5395 -
2006-11-15 22:44:13 +00:00