summaryrefslogtreecommitdiff
path: root/riscv/riscv-probe/examples/symbols
diff options
context:
space:
mode:
authorCarlos Maiolino <[email protected]>2025-07-10 22:18:39 +0200
committerCarlos Maiolino <[email protected]>2025-07-10 22:18:39 +0200
commit8c6fc0c15415b32080a848bbde640e104098cf13 (patch)
tree04a21bd28f9dc82c8e216390d6208ed93b9bcd11 /riscv/riscv-probe/examples/symbols
Initial drop
Add some riscv code Signed-off-by: Carlos Maiolino <[email protected]>
Diffstat (limited to 'riscv/riscv-probe/examples/symbols')
-rw-r--r--riscv/riscv-probe/examples/symbols/rules.mk1
-rw-r--r--riscv/riscv-probe/examples/symbols/symbols.c28
2 files changed, 29 insertions, 0 deletions
diff --git a/riscv/riscv-probe/examples/symbols/rules.mk b/riscv/riscv-probe/examples/symbols/rules.mk
new file mode 100644
index 0000000..ba4e934
--- /dev/null
+++ b/riscv/riscv-probe/examples/symbols/rules.mk
@@ -0,0 +1 @@
+symbols_objs = symbols.o
diff --git a/riscv/riscv-probe/examples/symbols/symbols.c b/riscv/riscv-probe/examples/symbols/symbols.c
new file mode 100644
index 0000000..d05807f
--- /dev/null
+++ b/riscv/riscv-probe/examples/symbols/symbols.c
@@ -0,0 +1,28 @@
+#include <stdio.h>
+
+/* program to print linker script provided symbols */
+
+extern char _text_start;
+extern char _text_end;
+extern char _rodata_start;
+extern char _rodata_end;
+extern char _data_start;
+extern char _data_end;
+extern char _bss_start;
+extern char _bss_end;
+extern char _memory_start;
+extern char _memory_end;
+
+int main(int argc, char **argv)
+{
+ printf("_text_start=0x%x\n", &_text_start);
+ printf("_text_end=0x%x\n", &_text_end);
+ printf("_rodata_start=0x%x\n", &_rodata_start);
+ printf("_rodata_end=0x%x\n", &_rodata_end);
+ printf("_data_start=0x%x\n", &_data_start);
+ printf("_data_end=0x%x\n", &_data_end);
+ printf("_bss_start=0x%x\n", &_bss_start);
+ printf("_bss_end=0x%x\n", &_bss_end);
+ printf("_memory_start=0x%x\n", &_memory_start);
+ printf("_memory_end=0x%x\n", &_memory_end);
+}