summaryrefslogtreecommitdiff
path: root/riscv/trunk/compiler/systems/i_embed.pas
diff options
context:
space:
mode:
Diffstat (limited to 'riscv/trunk/compiler/systems/i_embed.pas')
-rw-r--r--riscv/trunk/compiler/systems/i_embed.pas71
1 files changed, 70 insertions, 1 deletions
diff --git a/riscv/trunk/compiler/systems/i_embed.pas b/riscv/trunk/compiler/systems/i_embed.pas
index 246cc3a581..5f8d567514 100644
--- a/riscv/trunk/compiler/systems/i_embed.pas
+++ b/riscv/trunk/compiler/systems/i_embed.pas
@@ -346,7 +346,71 @@ unit i_embed;
stackalign : 16;
abi : abi_default;
llvmdatalayout : 'e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128';
- );
+ );
+
+ system_riscv32_embedded_info : tsysteminfo =
+ (
+ system : system_riscv32_embedded;
+ name : 'Embedded';
+ shortname : 'embedded';
+ flags : [tf_needs_symbol_size,tf_needs_symbol_type,tf_files_case_sensitive,
+ tf_requires_proper_alignment,tf_smartlink_sections];
+ cpu : cpu_riscv32;
+ unit_env : '';
+ extradefines : '';
+ exeext : '';
+ defext : '.def';
+ scriptext : '.sh';
+ smartext : '.sl';
+ unitext : '.ppu';
+ unitlibext : '.ppl';
+ asmext : '.s';
+ objext : '.o';
+ resext : '.res';
+ resobjext : '.or';
+ sharedlibext : '.so';
+ staticlibext : '.a';
+ staticlibprefix : 'libp';
+ sharedlibprefix : 'lib';
+ sharedClibext : '.so';
+ staticClibext : '.a';
+ staticClibprefix : 'lib';
+ sharedClibprefix : 'lib';
+ importlibprefix : 'libimp';
+ importlibext : '.a';
+ Cprefix : '';
+ newline : #10;
+ dirsep : '/';
+ assem : as_gas;
+ assemextern : as_gas;
+ link : ld_none;
+ linkextern : ld_embedded;
+ ar : ar_gnu_ar;
+ res : res_none;
+ dbg : dbg_dwarf2;
+ script : script_unix;
+ endian : endian_little;
+ alignment :
+ (
+ procalign : 4;
+ loopalign : 4;
+ jumpalign : 0;
+ constalignmin : 4;
+ constalignmax : 4;
+ varalignmin : 4;
+ varalignmax : 4;
+ localalignmin : 4;
+ localalignmax : 4;
+ recordalignmin : 0;
+ recordalignmax : 4;
+ maxCrecordalign : 4
+ );
+ first_parm_offset : 0;
+ stacksize : 262144;
+ stackalign : 4;
+ abi : abi_default;
+ llvmdatalayout : 'e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32-n8:16:32-S32';
+ );
system_riscv64_embedded_info : tsysteminfo =
(
@@ -440,6 +504,11 @@ initialization
set_source_info(system_x86_64_embedded_info);
{$endif embedded}
{$endif CPUX86_64}
+{$ifdef CPURISCV32}
+ {$ifdef embedded}
+ set_source_info(system_riscv32_embedded_info);
+ {$endif embedded}
+{$endif CPURISCV32}
{$ifdef CPURISCV64}
{$ifdef embedded}
set_source_info(system_riscv64_embedded_info);