nickysn
ca77f07013
* fixed offset to procedure/function parameters
...
git-svn-id: branches/z80@44674 -
2020-04-09 23:48:47 +00:00
nickysn
377f52ee69
+ started work on the sdcc-sdasz80 asm backend
...
git-svn-id: branches/z80@44445 -
2020-03-30 23:31:04 +00:00
nickysn
70abc8ce44
* switch to z80asm (instead of gas, which doesn't support z80) for system_z80_embedded
...
git-svn-id: branches/z80@44409 -
2020-03-29 19:52:51 +00:00
nickysn
755fe97c51
* synchronize with trunk
...
git-svn-id: branches/z80@44397 -
2020-03-29 16:24:32 +00:00
nickysn
fd9f3a43ce
+ added cpu_sys_z80 to the tsystemcpu enum. Name is not cpu_z80, because that
...
conflicts with tcputype.
git-svn-id: branches/z80@44393 -
2020-03-29 14:25:53 +00:00
florian
2a957e77bf
+ Xtensa: initial implementation of tcgcpu.g_proc_entry
...
git-svn-id: trunk@44363 -
2020-03-25 21:17:04 +00:00
florian
9e40d536cb
+ Xtensa: initial skeleton completed
...
+ xtensa-embedded support in the compiler
git-svn-id: trunk@44318 -
2020-03-20 22:34:33 +00:00
florian
a20209e691
+ tf_init_final_units_by_calls
...
* arm-embedded generates direct calls for unit init/final now as well
git-svn-id: trunk@43771 -
2019-12-24 16:14:30 +00:00
Jeppe Johansen
a1a17447ff
- Fix bug in 64bit softfloat double negation.
...
- Clean up handling of CPU/FPU type handling in RISCV.
- Do more fixes to get RISCV32 working.
- Fix most soft multiplication handling for generic RISCV code. Still missing a few.
- Add RISCV embedded targets.
git-svn-id: trunk@42335 -
2019-07-07 11:32:27 +00:00
Jonas Maebe
dee1056546
* fixed wrong change of jumpalignmax from 10 to 16 in previous commit
...
o renamed jumpalignmax and coalescealignmax to jumpalignskipmax/
coalescealignskipmax to better reflex the meaning of these setting
(and the difference in meaning to e.g. constalignmax)
git-svn-id: trunk@40682 -
2018-12-28 13:22:50 +00:00
Jonas Maebe
e8512d19b5
* set constalignmax to the same value as varalignmax for all targets where
...
constalignmax was lower (which does not make sense)
git-svn-id: trunk@40443 -
2018-12-01 23:07:09 +00:00
florian
a092da723a
+ new fields for more precise control of alignment
...
+ support of new alignment control values for GNU AS writer
+ support of new alignment control values for binary writer
* better alignment settings on i386-win32
* improved inserted align directives for if nodes
git-svn-id: trunk@40159 -
2018-11-01 20:49:17 +00:00
nickysn
b9ab9e5782
+ initial (experimental) implementation of section-based smartlinking for i8086.
...
Use -dI8086_SMARTLINK_SECTIONS to enable.
git-svn-id: trunk@39211 -
2018-06-11 16:56:33 +00:00
florian
0b10193660
* use dwarf-3 for avr-embedded by default as it makes the size of DW_FORM_ref_addr target indepented
...
git-svn-id: trunk@37661 -
2017-12-02 17:37:11 +00:00
florian
fc4a8c0daa
* more z80 support for the compiler
...
git-svn-id: branches/z80@35678 -
2017-03-28 20:21:03 +00:00
Károly Balogh
a4b096e9da
m68k: added the embedded target
...
git-svn-id: trunk@35589 -
2017-03-15 13:37:56 +00:00
Károly Balogh
1c4207642c
tabs to spaces indentation fixes. no functional changes
...
git-svn-id: trunk@35318 -
2017-01-17 13:41:13 +00:00
nickysn
c2305809dc
+ added an i8086-embedded target support to the compiler (RTL and makefile
...
support are not done yet)
git-svn-id: trunk@33999 -
2016-06-17 19:15:24 +00:00
Jeppe Johansen
1c0c944311
Added x86_64-embedded target. Patch from Benjamin Rosseaux
...
git-svn-id: trunk@33097 -
2016-02-14 10:57:00 +00:00
Jeppe Johansen
4c8fc04a24
Fix a bunch of alignment problems for arm-embedded, mostly armv6m which uses the generic Move and FIllChar routines.
...
git-svn-id: trunk@32070 -
2015-10-17 12:11:32 +00:00
florian
3d0b1020d7
* proper alignment constants for avr-embedded
...
git-svn-id: trunk@30596 -
2015-04-14 20:47:47 +00:00
Jonas Maebe
bacd303208
* synchronized with trunk up to r27758
...
git-svn-id: branches/hlcgllvm@27779 -
2014-05-12 16:12:34 +00:00
florian
b2b26f84cf
* partially merged the mips-embedded branch of Michael Ring:
...
- startup code/controller units are not merged yet
- assembler call does not pass the needed CPU type yet
git-svn-id: trunk@27188 -
2014-03-19 21:25:38 +00:00
Jonas Maebe
e9268a0a14
* synchronised with trunk up till r26975
...
git-svn-id: branches/hlcgllvm@26976 -
2014-03-06 21:36:58 +00:00
Jeppe Johansen
d24cbbf9f5
Changed debug information to dwarf for ARM_embedded, and set local minimum alignment to 4.
...
Fixed a bug where ARMv7M targets would not use the DIV instructions.
Moved many size-optimizing Thumb2 peephole optimizations to PostPeepHoleOptsCpu. Previously those optimizations could make it impossible to reuse the shared arm peephole optimizations.
Reenabled a fixed MLA/MLS peephole optimization.
Refactored some FindRegDealloc+regLoadedWithNewValue into RegEndOfLife calls.
Fixed some broken UXTB/UXTH optimizations. Previously they would also match UXT* instructions with ROR shifter ops.
git-svn-id: trunk@26198 -
2013-12-08 16:50:15 +00:00
Jonas Maebe
9573160c1a
+ llvmdatalayout field for tsysteminfo that contains the encoded data layout
...
as used by llvm for most targets (taken from clang, adapted in some cases
where we use a custom stack alignment)
git-svn-id: branches/hlcgllvm@26032 -
2013-11-11 11:14:55 +00:00
sergei
38058505ba
* Changed linking infrastructure to look like assembler one:
...
* Changed direct references to linker classes in TSystemInfo records to enumerated ids.
* RegisterExtennalLinker and RegisterInternalLinker procedures replaced by single RegisterLinker procedure and moved to link.pas.
- TAbstractLinker is no longer necessary, removed.
This change allows to register linker once per id, rather than once per target, and also allows TSystemInfo records to be read-only.
git-svn-id: trunk@25279 -
2013-08-18 12:01:21 +00:00
Jeppe Johansen
818b43c060
Updated localalign values, and changed the behaviour of alignment of load/stores to not break aligned half-word copies
...
git-svn-id: branches/laksen/arm-embedded@22828 -
2012-10-23 12:45:40 +00:00
Jonas Maebe
bd31004fdb
+ describe for each supported target the default guaranteed stack alignment
...
git-svn-id: trunk@22278 -
2012-09-02 14:32:12 +00:00
florian
e9f2f3388e
* use dwarf2 on avr-embedded by default because stabs is difficult due to name mangling issues
...
git-svn-id: trunk@18973 -
2011-09-04 19:37:26 +00:00
florian
0be59445f8
+ basic i386-embedded implementation for multiboot by Jeppe Johansen, resolves #15676
...
git-svn-id: trunk@16801 -
2011-01-23 11:18:50 +00:00
Jonas Maebe
b4c8c73e70
* changed tf_use_function_relative_addresses into an assembler flag (with
...
the opposite meaning, af_stabs_use_function_absolute_addresses), because it
is different on Darwin for the internal and external assembler)
git-svn-id: trunk@14342 -
2009-12-06 13:21:28 +00:00
florian
86aad85b78
+ section smartlink bss for embedded targets
...
git-svn-id: trunk@13341 -
2009-06-27 15:21:01 +00:00
Tomas Hajny
54f3d28ce8
* prefix for import libraries now configurable rather than hardcoded, plus fixed issue with name of OS/2 import libraries
...
git-svn-id: trunk@12727 -
2009-02-09 00:01:15 +00:00
florian
24fe46b3a3
+ missing includes of fpcdefs.inc added
...
git-svn-id: trunk@11916 -
2008-10-18 14:07:42 +00:00
florian
c05d4912f4
+ basic system unit for avr-embedded
...
* fixed several compiler stuff to be able to start system unit compilation on avr
git-svn-id: trunk@10318 -
2008-02-13 20:35:16 +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