nickysn
f5d8f0599f
applied fix from trunk for building with fpc 2.6.x on unix
...
git-svn-id: branches/i8086@23755 -
2013-03-09 18:35:24 +00:00
nickysn
c467035a1c
added group directive, so that the .data, .rodata and .bss sections go to the same segment
...
git-svn-id: branches/i8086@23754 -
2013-03-09 18:30:11 +00:00
nickysn
2393cd5eef
added DebugWrite and DebugWriteLn to the minimal msdos rtl
...
git-svn-id: branches/i8086@23753 -
2013-03-09 18:29:23 +00:00
nickysn
1937ef8300
implemented OP_SHL, OP_SHR and OP_SAR in tcg8086.a_op_reg_reg
...
git-svn-id: branches/i8086@23751 -
2013-03-09 17:14:00 +00:00
nickysn
588b12200b
16-bit ALU fix in tcgunaryminusnode.second_integer
...
git-svn-id: branches/i8086@23745 -
2013-03-09 15:13:08 +00:00
nickysn
4ac508a2b9
fixed bug in tunaryplusnode.pass_typecheck introduced in my previous commit r23737
...
git-svn-id: branches/i8086@23744 -
2013-03-09 14:05:09 +00:00
nickysn
63ac46c74c
16-bit ALU fixes in tunaryminusnode.pass_typecheck and tunaryplusnode.pass_typecheck
...
git-svn-id: branches/i8086@23743 -
2013-03-09 13:24:42 +00:00
nickysn
54d804d06e
implemented tcg8086.a_op_reg_reg with support for 32-bit neg,not,add,sub,and,or and xor
...
git-svn-id: branches/i8086@23742 -
2013-03-09 12:28:48 +00:00
nickysn
95b15d15bd
another nested ifdef cleaned up
...
git-svn-id: branches/i8086@23741 -
2013-03-09 11:35:42 +00:00
nickysn
981f0a5c6c
nested ifdefs converted to series of elseif + some other ifdefs cleaned up
...
git-svn-id: branches/i8086@23740 -
2013-03-09 11:25:25 +00:00
nickysn
ded6b87acc
16-bit and 8-bit ALU fixes for int types in taddnode.pass_typecheck_internal
...
git-svn-id: branches/i8086@23737 -
2013-03-09 01:12:48 +00:00
nickysn
a3295bd520
use ncgadd in cpunode
...
git-svn-id: branches/i8086@23736 -
2013-03-09 00:03:15 +00:00
nickysn
e4d66dd95c
i8086 fix for taddnode.pass_typecheck_internal and real types
...
git-svn-id: branches/i8086@23735 -
2013-03-08 22:56:50 +00:00
nickysn
fd328eda44
really minimal msdos rtl added
...
git-svn-id: branches/i8086@23722 -
2013-03-08 00:54:54 +00:00
nickysn
1c08561525
added lpi for easy building the i8086 compiler with lazarus
...
git-svn-id: branches/i8086@23721 -
2013-03-08 00:39:14 +00:00
nickysn
5f7d432ff9
i8086 fixes in Tcgx86.g_concatcopy and TCGSize2OpSize
...
git-svn-id: branches/i8086@23720 -
2013-03-08 00:13:02 +00:00
nickysn
27e4048ed6
16-bit and 8-bit alu fix in thlcg2ll.location_force_reg
...
git-svn-id: branches/i8086@23719 -
2013-03-08 00:10:10 +00:00
nickysn
eff0894a66
all the extra i8086 units added
...
git-svn-id: branches/i8086@23718 -
2013-03-08 00:04:45 +00:00
nickysn
0684e783ae
added the files autogenerated from x86ins.dat; TODO: these are shared with i386, so move them to a common directory
...
git-svn-id: branches/i8086@23717 -
2013-03-07 23:34:07 +00:00
nickysn
6fb9e3cfa5
the basic i8086 units: cpuinfo and cpubase
...
git-svn-id: branches/i8086@23716 -
2013-03-07 23:09:03 +00:00
nickysn
72fcc2b9bd
added 'msdos' 16-bit real mode dos target
...
git-svn-id: branches/i8086@23715 -
2013-03-07 23:07:20 +00:00
nickysn
4440015db3
added i8086 specific adaptations to the NASM assembly writer
...
git-svn-id: branches/i8086@23714 -
2013-03-07 22:51:42 +00:00
nickysn
a4b1a9011b
i8086 specific stuff added to x86/cpubase.pas
...
git-svn-id: branches/i8086@23713 -
2013-03-07 22:49:35 +00:00
nickysn
a9809323dc
some more generic i8086 defines added
...
git-svn-id: branches/i8086@23712 -
2013-03-07 22:46:00 +00:00
nickysn
94e8690e2e
oops, forgot about systems.pas in the previous commit
...
git-svn-id: branches/i8086@23711 -
2013-03-07 22:40:52 +00:00
nickysn
44ffc298d5
cpu_i8086 and system_i8086_msdos added to the systems.inc enums
...
git-svn-id: branches/i8086@23710 -
2013-03-07 22:38:35 +00:00
nickysn
3a4135c07b
ifdef cpu86 replaced with ifdef cpui386
...
git-svn-id: branches/i8086@23709 -
2013-03-07 22:21:27 +00:00
florian
ca277c873e
+ branch for i8086 port development
...
git-svn-id: branches/i8086@23707 -
2013-03-07 20:21:25 +00:00
svenbarth
da7b24e242
Avoid multiple threadvar lookups when querying the current TThread. Inspired by Michael Schnell.
...
rtl/objpas/classes/classes.inc, TThread.GetCurrentThread:
* instead of checking CurrentThreadVar and reading it again afterwards we read it first into Result and check this value; this way we have one read access in the normal case and one read and one write access in the worst case
git-svn-id: trunk@23706 -
2013-03-07 20:15:32 +00:00
Jonas Maebe
3cde2b2d84
* fixed check for bitpacked accesses (mantis #24007 )
...
git-svn-id: trunk@23705 -
2013-03-07 15:44:41 +00:00
pierre
eeae77bfc2
Fix wrong cursor pos for 64 bit systems, hopefully fixes bug report 23957
...
git-svn-id: trunk@23704 -
2013-03-07 13:55:55 +00:00
lacak
2cfcf32725
fcl-db: odbc: enable 64bit support (use SQLLEN, SQLULEN instead of SQLINTEGER, SQLUINTEGER) after ODBC header file was updated for 64 bit support in rev.23702
...
git-svn-id: trunk@23703 -
2013-03-07 09:17:52 +00:00
michael
94e021157b
* Windows 64-bit patches from Laco
...
git-svn-id: trunk@23702 -
2013-03-07 08:57:18 +00:00
pierre
d9758e5d0e
Avoid TARGET_DIRS_TARGET_DIRS garbage by explicitly setting result of string function in AddTargetDefines method to empty at startup
...
git-svn-id: trunk@23701 -
2013-03-06 16:40:04 +00:00
Jonas Maebe
5d628b29bb
* set the subregsize of OS_M64 SSE registers to R_SUBQ so we can
...
differentiate between 64 bit and 128 bit (R_SUBMMWHOLE) SSE vector regs,
and support spilling/assembling for R_SUBQ SSE registers (8 bytes)
(mantis #23962 )
We currently never use the full 128 bit of an SSE register, and
spilling for those hasn't been implemented yet either (R_SUBMMWHOLE
SSE regs are spilled into a 4-byte temp currently -> can overwrite data)
git-svn-id: trunk@23700 -
2013-03-06 12:42:46 +00:00
michael
02f64db373
* Fixes for typos from Reinier Olislagers (bug 23895)
...
git-svn-id: trunk@23699 -
2013-03-06 08:34:20 +00:00
sergei
823e3ea398
MIPS: reworked PIC/call code:
...
+ Favor 'weak' parameter in a_call_name of both thlcgmips and TCGMIPS.
* make_simple_ref and a_loadaddr_ref_reg: require input references to be 'raw' (no refaddr=addr_pic, etc) and do not use GP as base/index. If it's not true, raise an internal error. When addr_pic_call16 or so needs to be generated, it must be done without calling the mentioned methods.
* thlcgmips.a_call_name: generate PIC sequence for procedures declared as 'external', instead of 'cdecl', this is more correct because ABI has only one calling convention.
- make_simple_ref_fpu removed, there's no reason to handle references to floating-point data in different way.
- a_loadaddr_ref_cgpara override also removed, generic method does the job just well.
- thlcgmips.a_call_ref and a_call_reg overrides removed because indirect calls are now always done using $t9.
git-svn-id: trunk@23698 -
2013-03-05 19:31:20 +00:00
sergei
a1b50f643e
- removed never used function.
...
git-svn-id: trunk@23697 -
2013-03-05 18:05:52 +00:00
pierre
f4b6625145
+ Use __setlocale_mb_len_max_32 for netbsd as suggested by linker warning
...
git-svn-id: trunk@23696 -
2013-03-05 11:40:24 +00:00
yury
5bf237afc1
* Turn off assigning UnixGetModuleByAddrHook for Android, since dladdr() function is not available on old (1.x) Android versions.
...
git-svn-id: trunk@23695 -
2013-03-05 00:00:02 +00:00
yury
5d061a7efa
* Do not use persistent register r5 in the library init code. It fixes crash during library load on some versions of Android. Issue #23974 .
...
* Made the startup code Thumb-safe.
git-svn-id: trunk@23694 -
2013-03-04 23:49:41 +00:00
yury
63d1c3aa94
* Set default CPU armv5t for arm-android. Issue #23973 .
...
git-svn-id: trunk@23693 -
2013-03-04 21:46:36 +00:00
florian
eb46359ae8
* marking r22827 as merged
...
git-svn-id: trunk@23692 -
2013-03-04 20:49:58 +00:00
florian
c5b8b9406b
* merged r22818
...
git-svn-id: trunk@23691 -
2013-03-04 20:48:55 +00:00
sergei
6fcd9979dd
+ MIPS: doing progress with linker, implemented processing of local symbols in PIC code and stuff needed to link shared libraries.
...
git-svn-id: trunk@23690 -
2013-03-04 20:48:33 +00:00
yury
268b2d56d7
* Fixed displaying of compilation time in some cases. For example, if the compilation time is 0.99 seconds, it has been displayed as 0.10. Now it is correctly displayed as 1.0.
...
git-svn-id: trunk@23689 -
2013-03-04 16:02:51 +00:00
svenbarth
168c9d152f
Small optimization for the search of operator overloads. Add a flag "sto_has_generic" to all symtables that contain an operator overload (the flag propagates up the owning symtables) and check this flag when searching for units with operators.
...
symconst.pas:
+ add "sto_has_operator" to "tsymtableoption"
pdecsub.pas:
+ include the flag "sto_has_operator" for all operator declarations and their owning symtables
htypechk.pas, tcallcandidates:
* create_candidate_list: only check for operator overloads if the record does indeed declare some
* collect_overloads_in_units: only check for operator overloads if the unit does indeed declare some
utils/ppudump.pp:
+ respect the new "sto_has_operator" flag
git-svn-id: trunk@23688 -
2013-03-04 16:02:18 +00:00
florian
9198630ce3
* fix armv7m compiler
...
git-svn-id: trunk@23686 -
2013-03-03 21:59:34 +00:00
pierre
90f4d8ddcd
+ Add .note.openbsd.ident section, contributed by Pascal Stumpf
...
git-svn-id: trunk@23685 -
2013-03-03 21:18:20 +00:00
sergei
6484911f05
* TExeOutput.FixupRelocations method made virtual.
...
* TElfExeOutput.MemPos_Start split into four smaller methods.
git-svn-id: trunk@23684 -
2013-03-03 20:01:54 +00:00