Commit Graph

45711 Commits

Author SHA1 Message Date
nickysn
1c5d0ed09a + support aitconst_farptr in tai_const.size
git-svn-id: trunk@30455 -
2015-04-05 23:33:41 +00:00
nickysn
b67fea70bd + write a MODEND (end of module) record at the end of the omf file
git-svn-id: trunk@30454 -
2015-04-05 22:42:26 +00:00
nickysn
28dc9fe68b * fixed definition of the ALUSInt type on 16-bit CPUs
git-svn-id: trunk@30453 -
2015-04-05 21:47:32 +00:00
nickysn
c59855b5e7 + start writing actual section content (without fixups and probably still buggy)
in the OMF object writer
* give proper section names (like in the NASM asm writer) for the OMF object
  writer

git-svn-id: trunk@30452 -
2015-04-05 21:39:02 +00:00
florian
134457fb8c + define types depending on the ALU register size of the CPU, e. g. for most 8 Bit CPUs this is different from Ptr(U)Int, and e.g. also for the far pointer memory models of i8086
git-svn-id: trunk@30451 -
2015-04-05 21:25:03 +00:00
florian
9ab9e03650 * limit number of possible units with initialization/finalization for a certain architecture to high(aint)
+ give an error if the number of possible units is exceeded

git-svn-id: trunk@30450 -
2015-04-05 21:06:58 +00:00
florian
b684719f1e + give an error if allocated temps. overflow the normally max. available space
git-svn-id: trunk@30449 -
2015-04-05 20:59:34 +00:00
nickysn
444b63cf07 + added class for reading/writing a FIXUP subrecord in a FIXUPP omf record
git-svn-id: trunk@30448 -
2015-04-05 19:57:41 +00:00
pierre
c59e8733d6 Try to fix error introduced in commit 28925 leading to corruption of HelpFiles and SourceDirList
git-svn-id: trunk@30447 -
2015-04-05 19:42:01 +00:00
florian
1114089d25 * IsJumpToLabel checks number of operands
* add a few safety checks

git-svn-id: trunk@30446 -
2015-04-05 19:24:22 +00:00
florian
02d9c676d3 * make offsets passed to tconst of type asizeint instead of aint
git-svn-id: trunk@30445 -
2015-04-05 19:18:52 +00:00
florian
63bf17440c * use volatile registers first
* fix some range check errors

git-svn-id: trunk@30444 -
2015-04-05 19:17:24 +00:00
florian
db63693b7e * tai returned by GetNextInstructionUsingReg must be checked if it is really an instruction
git-svn-id: trunk@30443 -
2015-04-05 19:12:43 +00:00
florian
2b9c0ef3b4 - jmp_instructions shouldn't include call/ret instructions
git-svn-id: trunk@30442 -
2015-04-05 19:11:40 +00:00
florian
73c0422997 + create defines for CPU ALU size
git-svn-id: trunk@30441 -
2015-04-05 19:09:28 +00:00
florian
a01a010824 * disable lineinfo unit for avr for now
git-svn-id: trunk@30440 -
2015-04-05 19:08:33 +00:00
florian
2daae5ff03 * moved comment so it is recognized by lazarus as a method description
git-svn-id: trunk@30439 -
2015-04-05 19:08:00 +00:00
florian
31709b1b43 * check registers of ait_regalloc for a valid color when translating and compiling with -dextdebug
git-svn-id: trunk@30438 -
2015-04-05 19:06:06 +00:00
michael
5e99f7f9c1 * Implemented sqoCancelUpdatesOnRefresh, remedy bug ID #21989
git-svn-id: trunk@30437 -
2015-04-05 17:39:28 +00:00
nickysn
25411c3871 + added omf fixup related enums
git-svn-id: trunk@30436 -
2015-04-05 14:50:59 +00:00
michael
d63961ce02 * Fixed bug ID #8201
git-svn-id: trunk@30435 -
2015-04-05 10:12:46 +00:00
michael
844cf495f8 * Set PacketRecords to -1 if IndexFieldNames is set (bug ID 25387)
git-svn-id: trunk@30434 -
2015-04-05 09:59:29 +00:00
michael
7ad2f934f5 * Map dfANY to CSV data, allows to use regular Load/Save methods in TCSVDataset. Check if me can introduce dfCSV
git-svn-id: trunk@30433 -
2015-04-05 09:23:28 +00:00
pierre
59e2728940 Fix merge error that resulted in wrong position of finalization code
git-svn-id: trunk@30432 -
2015-04-05 08:58:54 +00:00
michael
c4617ee2ad * Adapted patch from Laco to use new login prompt callback
git-svn-id: trunk@30431 -
2015-04-05 08:39:59 +00:00
Jonas Maebe
94aadb23ab + implemented getintparaloc() for llvm
git-svn-id: trunk@30430 -
2015-04-04 14:29:19 +00:00
Jonas Maebe
61e4a1b811 + added tasmlist parameter to getintparaloc() (needed for llvm)
git-svn-id: trunk@30429 -
2015-04-04 14:29:16 +00:00
Jonas Maebe
2336d22985 * override instr_get_oper_spilling_info and substitute_spilled_registers for
llvm (add support for top_para)

git-svn-id: trunk@30428 -
2015-04-04 14:29:12 +00:00
Jonas Maebe
9d4c8f68d4 * fixed first_fpu_immreg definition
git-svn-id: trunk@30427 -
2015-04-04 14:29:09 +00:00
Jonas Maebe
e12dff9a5e * support top_para in trgllvm.get_spill_temp()
git-svn-id: trunk@30426 -
2015-04-04 14:29:06 +00:00
Jonas Maebe
e750678f37 * factored out spilling code that deals with operand types into virtual
methods so they can be overridden by platform-specific variants
    for platform-specific operand types

git-svn-id: trunk@30425 -
2015-04-04 14:29:03 +00:00
Jonas Maebe
ee7198aa57 * fixed memory leak in case one tai operand is replaced by another
git-svn-id: trunk@30424 -
2015-04-04 14:29:00 +00:00
Jonas Maebe
3279cc052a * moved llvm-specific code from aasmtai to aasmllvm
* call add_reg_instruction_hook() for top_para parameters

git-svn-id: trunk@30423 -
2015-04-04 14:28:57 +00:00
Jonas Maebe
2ef753faae * support llvm spilling_get_reg_type() for the destination of call/invoke
git-svn-id: trunk@30422 -
2015-04-04 14:28:54 +00:00
michael
1b540a6e8c * Fix stripping of final delimiters (bug 0019361)
git-svn-id: trunk@30421 -
2015-04-04 13:48:48 +00:00
nickysn
7f4c2c0cc2 * added missing 'private' declaration to TOmfRecord_SEGDEF
git-svn-id: trunk@30420 -
2015-04-04 12:48:05 +00:00
Jeppe Johansen
e2272c8a7e Added aitconst_gs for AVR pointer references to Flash.
git-svn-id: trunk@30419 -
2015-04-04 10:29:11 +00:00
michael
a4ddc64e78 * Changed CSV export to use CSVBuilder to be more RFC 4180 compliant
git-svn-id: trunk@30418 -
2015-04-04 10:15:14 +00:00
michael
6b130438eb * Implemented CSVDataset
git-svn-id: trunk@30417 -
2015-04-04 09:46:43 +00:00
michael
c37720d12d * Added csdocument, split out in csvreadwrite and csvdocument (bug ID 247
git-svn-id: trunk@30416 -
2015-04-04 08:57:19 +00:00
nickysn
ef9c15c165 + write link pass 1 separator to omf obj output
git-svn-id: trunk@30415 -
2015-04-04 00:14:34 +00:00
nickysn
4fc55f97fc * refactored adding groups to use a method with an 'array of const' parameter
git-svn-id: trunk@30414 -
2015-04-03 23:45:43 +00:00
nickysn
1521f88a9d * fixed off by one error when writing a GRPDEF record
git-svn-id: trunk@30413 -
2015-04-03 22:56:49 +00:00
nickysn
a9f10f60eb + write the dgroup GRPDEF record
git-svn-id: trunk@30412 -
2015-04-03 22:56:09 +00:00
nickysn
a84537dd9b + create the default segments and write them in the OMF object file
git-svn-id: trunk@30411 -
2015-04-03 22:33:45 +00:00
nickysn
56621e6ee1 + added class for writing GRPDEF omf records
git-svn-id: trunk@30410 -
2015-04-03 21:58:02 +00:00
nickysn
7c90285af1 * improved record length checking in the SEGDEF omf record parsing
git-svn-id: trunk@30409 -
2015-04-03 00:12:16 +00:00
nickysn
28d8e915b7 + implemented parsing of SEGDEF omf records as well
git-svn-id: trunk@30408 -
2015-04-02 23:59:45 +00:00
nickysn
f380d67575 - rm unused var
git-svn-id: trunk@30407 -
2015-04-02 23:49:36 +00:00
nickysn
65212e7a34 + added class for encoding a SEGDEF(32) omf record
git-svn-id: trunk@30406 -
2015-04-02 23:05:02 +00:00