Károly Balogh
68a25e154a
Amiga/MorphOS: enabled resource support, to match AROS in features
...
git-svn-id: trunk@30565 -
2015-04-13 00:49:00 +00:00
nickysn
fe30b53e95
* use 16-bit operand types for call/jmp immediate on i8086 in taicpu.create_ot
...
git-svn-id: trunk@30563 -
2015-04-12 23:53:15 +00:00
nickysn
a25a906d56
* i8086 internal asm fixes for the 0324 and 0361 asm codes
...
git-svn-id: trunk@30562 -
2015-04-12 22:56:28 +00:00
nickysn
38c17305d3
- removed tf_smartlink_sections flags from the msdos target
...
git-svn-id: trunk@30561 -
2015-04-12 22:11:21 +00:00
florian
fa6bea9bbb
* all the cg/hlcg routines take normally tcgint constants, so replace aint constants and casts in ncgset by tcgint ones
...
git-svn-id: trunk@30560 -
2015-04-12 20:32:37 +00:00
florian
4d01271944
* due to avr's harvard architecture, loads of code labels need to use the gs(...) macro
...
git-svn-id: trunk@30559 -
2015-04-12 20:29:13 +00:00
florian
1f20a52c85
* fix typo in comparison with constant code
...
git-svn-id: trunk@30556 -
2015-04-12 15:42:40 +00:00
florian
bd803769b8
* fix compilation
...
git-svn-id: trunk@30554 -
2015-04-12 14:58:41 +00:00
florian
9559dabe51
* function result is in r24:r25
...
git-svn-id: trunk@30549 -
2015-04-11 21:25:05 +00:00
florian
e34bd746ed
* patch by Jeppe Johanse to take care of the fact that push is post-decrement on avr
...
git-svn-id: trunk@30548 -
2015-04-11 20:59:27 +00:00
florian
1ef7e36f3c
* some fixes for handling parameters passed on the stack
...
git-svn-id: trunk@30545 -
2015-04-11 13:56:21 +00:00
florian
276d97f653
* generate better code for comparisons with constants
...
git-svn-id: trunk@30543 -
2015-04-11 13:52:29 +00:00
florian
e0b27e1688
* unified typing and ppu reading/writing of setdef fields regarding aint/asizeint
...
git-svn-id: trunk@30542 -
2015-04-11 11:36:01 +00:00
florian
4b7ae00620
* fixes several issues with parameter handling on avr
...
git-svn-id: trunk@30541 -
2015-04-11 11:13:20 +00:00
florian
03fa8336de
o several avr fixes
...
* handle function result of FPC_MUL_WORD correctly
* use mov ...,r1 to load a register with zero instead of clr ..., this might enable the register allocator to
coalesce these moves in the feature
* use tst/dec instead of cpi/sub in the shifting loops, this reduces register pressure on r16 and higher
git-svn-id: trunk@30540 -
2015-04-11 11:08:01 +00:00
florian
315d7d9725
+ do_spill_replace for avr
...
git-svn-id: trunk@30535 -
2015-04-10 22:14:36 +00:00
florian
f95d5e0de6
+ support 8 locations in gen_load_cgpara_loc
...
git-svn-id: trunk@30534 -
2015-04-10 20:33:11 +00:00
florian
6c19c18bc9
+ support 8 locations in splitparaloc64
...
git-svn-id: trunk@30533 -
2015-04-10 20:32:22 +00:00
nickysn
3dd914a7b9
+ write the proper external symbol index in the omf FIXUPP records. WLink no
...
longer crashes when processing our obj files :)
git-svn-id: trunk@30528 -
2015-04-09 23:33:22 +00:00
nickysn
d8f04418be
+ write EXTDEF records in the omf output file
...
git-svn-id: trunk@30527 -
2015-04-09 23:27:45 +00:00
nickysn
fd9e0d7266
* i8086 binary writer fixes for asm codes 0320..0322
...
git-svn-id: trunk@30526 -
2015-04-09 23:10:47 +00:00
nickysn
db5276af61
* i8086 binary writer fixes for asm codes 0300..0302
...
git-svn-id: trunk@30525 -
2015-04-09 22:56:47 +00:00
nickysn
0aa8e9d829
+ i8086 fixes in the binary writer for asm codes 0310 and 0311
...
git-svn-id: trunk@30524 -
2015-04-09 22:47:21 +00:00
nickysn
8597208ed9
* fixed emitting a 66h prefix for push/pop of segment registers on i8086 in the internal asm writer
...
git-svn-id: trunk@30523 -
2015-04-09 22:01:24 +00:00
florian
a4c7103033
* remove useless mov instructions
...
git-svn-id: trunk@30522 -
2015-04-09 21:57:02 +00:00
nickysn
ff20a3c7bc
+ support 16-bit addresses for codes 36..38 in the internal asm writer on i8086
...
git-svn-id: trunk@30521 -
2015-04-09 21:16:22 +00:00
florian
ef2e2c5033
* assign registers for parameters correctly, resolves #27804
...
git-svn-id: trunk@30520 -
2015-04-09 20:39:18 +00:00
florian
6a032bee1b
* improved code generation for a_load_const_reg and a_op_const_reg
...
git-svn-id: trunk@30519 -
2015-04-09 20:38:19 +00:00
florian
061a1aacf3
* named class properly
...
git-svn-id: trunk@30518 -
2015-04-09 20:36:47 +00:00
florian
9af36c2257
* several fixes for spilling_get_operation_type
...
git-svn-id: trunk@30517 -
2015-04-09 20:33:40 +00:00
nickysn
8a831f4c7f
* always clear segments and groups in the beginning of TOmfObjOutput.writeData, because the same objects is used for creating multiple object files
...
git-svn-id: trunk@30516 -
2015-04-09 15:42:29 +00:00
nickysn
f66d8cfb7f
* create normal object files, instead of using the internal "ar" writer in TInternalAssembler.writetreesmart in case the af_needar flag is set on an internal assembler
...
git-svn-id: trunk@30515 -
2015-04-09 14:50:22 +00:00
nickysn
7ecb7f83e9
+ create omf fixups for external symbols (external symbol index not set yet)
...
git-svn-id: trunk@30514 -
2015-04-09 13:56:55 +00:00
nickysn
e1ae2d9387
+ create a symbol relocation for external symbols in TOmfObjData.writeReloc
...
git-svn-id: trunk@30512 -
2015-04-09 13:48:56 +00:00
nickysn
fb234e2149
+ check record type in TOmfRecord_COMENT.DecodeFrom
...
git-svn-id: trunk@30511 -
2015-04-09 13:08:45 +00:00
nickysn
713f12f3f3
+ implemented TOmfRecord_GRPDEF.DecodeFrom
...
git-svn-id: trunk@30510 -
2015-04-09 12:45:47 +00:00
Jonas Maebe
8fc562a2f8
* fixed def used for saving the result of fpc_setjmp() after r30497, fixes
...
cycle for x86-86 (mantis #27812 )
git-svn-id: trunk@30506 -
2015-04-09 07:36:45 +00:00
Jonas Maebe
9079227c56
* don't give an internalerror when trying to prefetch a regvar or even
...
something without a location at all; it's a hint/optional operation,
so if there's nothing to prefetch just don't do anything
(mantis #27811 )
git-svn-id: trunk@30502 -
2015-04-08 20:35:13 +00:00
Jonas Maebe
a8db5e3dfb
* fixed alignment of widestring on win64 after llvm branch merge (should use
...
packrecords 4) (mantis #27806 )
git-svn-id: trunk@30501 -
2015-04-08 19:08:43 +00:00
Jonas Maebe
6391794958
* fixed -Oodfa warnings
...
git-svn-id: trunk@30500 -
2015-04-08 19:08:39 +00:00
Jonas Maebe
af61923dc3
* don't write parameter attributes in procvardefs
...
git-svn-id: trunk@30499 -
2015-04-08 19:08:36 +00:00
Jonas Maebe
a8cefa8fcd
- removed aggas.pas leftovers
...
git-svn-id: trunk@30498 -
2015-04-08 19:08:33 +00:00
Jonas Maebe
a674804869
* made fpc_setjmp() code generic and fixed it for llvm
...
git-svn-id: trunk@30497 -
2015-04-08 19:08:30 +00:00
nickysn
23b95cc291
+ added classes for writing EXTDEF omf records
...
git-svn-id: trunk@30496 -
2015-04-08 14:13:35 +00:00
nickysn
470fb65e80
+ implemented aasmcpu.process_ea for i8086
...
git-svn-id: trunk@30495 -
2015-04-08 12:54:09 +00:00
nickysn
76da1db832
+ write all the public symbols in a PUBDEF record in the omf obj writer
...
git-svn-id: trunk@30492 -
2015-04-07 23:03:48 +00:00
nickysn
fb45d5e11b
* fixed some off-by-1 errors in TOmfRecord_PUBDEF.EncodeTo
...
git-svn-id: trunk@30491 -
2015-04-07 23:02:32 +00:00
nickysn
c4a8f22bc9
+ added classes for writing PUBDEF omf records
...
git-svn-id: trunk@30490 -
2015-04-07 22:18:46 +00:00
nickysn
35e008e44b
* TOmfRelocation modified to build the omf FIXUP subrecord later, during
...
writeData, when the ObjSection indexes are available; now we fill the proper
section/segment indexes, instead of hardcoded values.
git-svn-id: trunk@30489 -
2015-04-07 20:40:40 +00:00
nickysn
9e701454c6
+ add group "dgroup", this time built from the ObjSectionList, instead of hardcoded
...
git-svn-id: trunk@30488 -
2015-04-07 19:53:08 +00:00