1 | /* |
---|
2 | * Copyright (c) 2014 Chris Johns <chrisj@rtems.org>. All rights reserved. |
---|
3 | * |
---|
4 | * The license and distribution terms for this file may be |
---|
5 | * found in the file LICENSE in this distribution or at |
---|
6 | * http://www.rtems.org/license/LICENSE. |
---|
7 | */ |
---|
8 | |
---|
9 | #include "dl-load.h" |
---|
10 | #include "dl-o1.h" |
---|
11 | #include "dl-o4.h" |
---|
12 | |
---|
13 | #include <rtems/test-info.h> |
---|
14 | |
---|
15 | #define printf(...) rtems_printf(&rtems_test_printer, __VA_ARGS__); |
---|
16 | |
---|
17 | |
---|
18 | int dl04_unresolv_1; |
---|
19 | float dl04_unresolv_2; |
---|
20 | char dl04_unresolv_3; |
---|
21 | char* dl04_unresolv_4; |
---|
22 | const int dl04_unresolv_5 = 4; |
---|
23 | const char* dl04_unresolv_6 = "dl-O4"; |
---|
24 | |
---|
25 | /* |
---|
26 | * Yes a decl in the source. This is a modules main and I could not find which |
---|
27 | * header main is defined in. |
---|
28 | */ |
---|
29 | int rtems_main_o4 (int argc, const char* argv[]); |
---|
30 | |
---|
31 | #define DL_NAME "dlo4" |
---|
32 | #define PAINT_VAR(_v) sizeof(_v), &_v, _v |
---|
33 | |
---|
34 | int rtems_main_o4 (int argc, const char* argv[]) |
---|
35 | { |
---|
36 | printf (DL_NAME ": module: %s\n", dl_localise_file (__FILE__)); |
---|
37 | printf (DL_NAME ": dl01_bss1: %4zu: %p: %d\n", PAINT_VAR (dl01_bss1)); |
---|
38 | printf (DL_NAME ": dl01_bss2: %4zu: %p: %f\n", PAINT_VAR (dl01_bss2[0])); |
---|
39 | printf (DL_NAME ": dl01_bss3: %4zu: %p: %02x\n", PAINT_VAR (dl01_bss3[0])); |
---|
40 | printf (DL_NAME ": dl01_data1: %4zu: %p: %d\n", PAINT_VAR (dl01_data1)); |
---|
41 | /* no %f in the rtems test printer */ |
---|
42 | printf (DL_NAME ": dl01_data2: %4zu: %p: %f\n", PAINT_VAR (dl01_data2)); |
---|
43 | printf (DL_NAME ": dl01_const1: %4zu: %p: %d\n", PAINT_VAR (dl01_const1)); |
---|
44 | printf (DL_NAME ": dl01_const2: %4zu: %p: %f\n", PAINT_VAR (dl01_const2)); |
---|
45 | printf (DL_NAME ": dl01_func1: %4zu: %p\n", sizeof(dl01_func1), &dl01_func1); |
---|
46 | printf (DL_NAME ": dl04_unresolv_1: %4zu: %p: %d\n", PAINT_VAR (dl04_unresolv_1)); |
---|
47 | printf (DL_NAME ": dl04_unresolv_2: %4zu: %p: %f\n", PAINT_VAR (dl04_unresolv_2)); |
---|
48 | printf (DL_NAME ": dl04_unresolv_3: %4zu: %p: %02x\n", PAINT_VAR (dl04_unresolv_3)); |
---|
49 | printf (DL_NAME ": dl04_unresolv_4: %4zu: %p: %p\n", PAINT_VAR (dl04_unresolv_4)); |
---|
50 | printf (DL_NAME ": dl04_unresolv_5: %4zu: %p: %d\n", PAINT_VAR (dl04_unresolv_5)); |
---|
51 | printf (DL_NAME ": dl04_unresolv_6: %4zu: %p: %s\n", PAINT_VAR (dl04_unresolv_6)); |
---|
52 | return 0; |
---|
53 | } |
---|