Commit Graph

117 Commits

Author SHA1 Message Date
ccrause
652f21b656 RP2040 support based on modification by Michael Ring (https://github.com/michael-ring/freepascal). 2023-11-11 17:45:23 +00:00
ccrause
9440b17eea [AVR] Add command line options to selectively remove portions of the RTL startup code. 2023-08-15 21:33:58 +00:00
Pierre Muller
4750840e89 Specify endianess and abi when calling xtensa linker 2023-05-11 01:02:04 +00:00
florian
586a7d30ab * patch by ccrause: fixes another .fpc* section problem for AVR, resolves #40162 2023-02-20 22:48:15 +01:00
florian
8f7e61eef6 * patch by ccrause: do not load .fpc* sections into avr microcontroller to save space, resolves #40160 2023-02-19 20:19:20 +01:00
florian
123f196d5d * small correction to linker script 2022-09-27 22:10:56 +02:00
Nikolay Nikolov
dba189f4af + show a "linking" message before invoking the linker for the wasm32-embedded target 2022-07-15 16:09:52 +03:00
Nikolay Nikolov
46dcd4da76 - removed debug writeln when calling the linker for the wasm32-embedded target 2022-07-15 16:07:16 +03:00
Nikolay Nikolov
ad35fc82af + allow specifying custom extra linker options for the wasm32-embedded target 2022-07-15 16:04:01 +03:00
Nikolay Nikolov
ec9c81e77e * use current_module.sharedlibfilename instead of current_module.exefilename, when linking a library for the wasm32-embedded target 2022-07-15 15:59:34 +03:00
Nikolay Nikolov
9dfda963a3 + allow creating a linker map file, when compiling for the wasm32-embedded target 2022-07-15 15:57:23 +03:00
Nikolay Nikolov
078aa5d046 + pass '-m wasm32' to the linker, when compiling for the wasm32-embedded target 2022-07-15 15:53:55 +03:00
Nikolay Nikolov
1bbd16d1b7 + allow setting the stack size for the wasm32-embedded target 2022-07-15 15:53:13 +03:00
florian
776c39dc0a + avr-embedded: keep fpc.* sections, should resolve #39825 2022-07-09 22:04:10 +02:00
florian
1c7626715d * the stack pointer on Risc-V points always at the last used position, resolves #39739 2022-05-28 20:10:49 +02:00
Robert Roland
53e5a4a03a Adding aaarch64-embedded target
This adds support for aarch64-embedded, specifically for the Raspberry Pi 3.

Uses UART0 at 115200 baud 8N1 for console IO.
2022-01-05 12:29:00 +00:00
Jeppe Johansen
1105726dcf * Add SAMD51P19A controller type. Unit generated by Michael Ring and slightly modified.
git-svn-id: trunk@49034 -
2021-03-22 18:40:12 +00:00
nickysn
7ac2f9e242 * synchronized with trunk
git-svn-id: branches/wasm@48660 -
2021-02-13 02:46:23 +00:00
florian
98a748bdd6 + patch by Dimitrios Chr. Ioannidis: include dwar-3 sections in avr-embedded linker script
git-svn-id: trunk@48659 -
2021-02-12 21:39:31 +00:00
nickysn
64bb0359d2 * synchronized with trunk
git-svn-id: branches/wasm@48412 -
2021-01-24 23:38:35 +00:00
florian
1f49e633b6 + modified patch by Christo Crause: if the target support, the switch -Xu can be used to generate the executable as an uf2 file
git-svn-id: trunk@48394 -
2021-01-24 14:21:03 +00:00
yury
64c586b86d * Removed/ifdefed lots of unused variables.
git-svn-id: trunk@48384 -
2021-01-24 12:24:01 +00:00
nickysn
5b2b1beec3 * use ld_embedded instead of ld_wasm for the linker id for the wasm32 embedded target
git-svn-id: branches/wasm@48366 -
2021-01-24 01:48:57 +00:00
nickysn
f77ae51751 * the wasm target (now 'embedded') moved to the i_embed/t_embed units
git-svn-id: branches/wasm@48365 -
2021-01-24 01:45:35 +00:00
florian
ff87df7581 + factor out PostProcessELFExecutable
+ write executable section size on linux

git-svn-id: trunk@47622 -
2020-11-28 16:02:50 +00:00
florian
4559620efa * patch by Reynaldo to generate kernel image for the raspi2 embedded port, resolves #27052
git-svn-id: trunk@45365 -
2020-05-14 21:16:12 +00:00
nickysn
b1f7770845 + enable tf_smartlink_library and support library-based smartlinking on the z80-embedded target
git-svn-id: branches/z80@45082 -
2020-04-26 10:19:06 +00:00
nickysn
168c009bc3 - removed the 'sdcc-' prefix of sdasz80 and sdldz80
git-svn-id: branches/z80@44900 -
2020-04-20 23:50:45 +00:00
nickysn
2f68090dd6 * synchronized with trunk
git-svn-id: branches/z80@44898 -
2020-04-20 22:42:08 +00:00
florian
8ac8c79a71 + initial support for arm-freertos largely based on patch by Michael Ring
git-svn-id: trunk@44871 -
2020-04-19 20:59:52 +00:00
nickysn
4b11433d63 * fixed warning in t_embed
git-svn-id: branches/z80@44819 -
2020-04-19 01:40:16 +00:00
nickysn
9922956115 * use the sdcc-sdldz80 linker instead of sdcc-sdld on the Z80
git-svn-id: branches/z80@44616 -
2020-04-05 22:33:20 +00:00
nickysn
6dcc12f19b * use the .ihx file name, instead of .elf for the z80-embedded output, because it is in Intel hex
format, not ELF

git-svn-id: branches/z80@44608 -
2020-04-05 20:51:54 +00:00
nickysn
891939d7ea + add the -n option first to the sdcc-sdld linker, so it doesn't echo all the data on the screen. For
debugging purposes, this can be overriden with the -k-p fpc option.

git-svn-id: branches/z80@44607 -
2020-04-05 20:50:31 +00:00
nickysn
b1047523c8 * moved $MAP earlier in the command line of sdcc-sdld
git-svn-id: branches/z80@44606 -
2020-04-05 20:48:37 +00:00
nickysn
9d5a07a59a + allow passing extra options to the sdcc-sdld linker via the -k option
git-svn-id: branches/z80@44605 -
2020-04-05 20:36:42 +00:00
nickysn
5b0f177b62 + create linker map file generation added for sdcc-sdld
git-svn-id: branches/z80@44604 -
2020-04-05 20:32:25 +00:00
nickysn
77406b1560 * delete the linker response file after linking with sdld
git-svn-id: branches/z80@44603 -
2020-04-05 20:26:53 +00:00
nickysn
e73a57652f + initial support for the sdcc-sdld linker for the z80-embedded target
git-svn-id: branches/z80@44602 -
2020-04-05 17:46:06 +00:00
nickysn
755fe97c51 * synchronize with trunk
git-svn-id: branches/z80@44397 -
2020-03-29 16:24:32 +00:00
florian
729425447f + Xtensa: basic operations for Xtensa implemented
git-svn-id: trunk@44324 -
2020-03-21 12:49:46 +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
36058ca4d4 * based on a patch by Christo Crause: more compiler fixes for avrtiny, resolves #36646
git-svn-id: trunk@44103 -
2020-02-02 20:35:29 +00:00
florian
670c61e760 * patch by Christo Crause: support for megaAVR 0 and tinyAVR 0/1, #36616, part 1/3
git-svn-id: trunk@44036 -
2020-01-26 14:35:26 +00:00
florian
7b4292c94e * patch by Robert Roland to support the RaspberryPi 2 as a bare metal embedded target, resolves #35236
git-svn-id: trunk@44027 -
2020-01-23 21:14:49 +00:00
Jeppe Johansen
2678522db5 - RISC-V: Add controller types for common RV32 MCUs.
- Adds initial controller units for these MCUs.

Code contributed by Michael Ring

git-svn-id: trunk@43935 -
2020-01-13 22:54:26 +00:00
florian
9926eb8dc6 * patch by Christo Crause: Passing a file name with extension to cross compiler
with -o causes error, fixed, resolves #36562

git-svn-id: trunk@43921 -
2020-01-12 20:57:52 +00:00
Jeppe Johansen
89a961f960 * Add support for generating map files for embedded target.
git-svn-id: trunk@43866 -
2020-01-05 17:00:50 +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
281b3ad276 * fix case completeness and unreachable code warnings in compiler that would
be introduced by the next commit

git-svn-id: trunk@42046 -
2019-05-12 14:29:03 +00:00