Changeset 9cea6da in rtems-libbsd
- Timestamp:
- 10/01/14 11:19:35 (9 years ago)
- Branches:
- 4.11, 5, 5-freebsd-12, 6-freebsd-12, freebsd-9.3, master
- Children:
- d43544e
- Parents:
- 454d682
- git-author:
- Sebastian Huber <sebastian.huber@…> (10/01/14 11:19:35)
- git-committer:
- Sebastian Huber <sebastian.huber@…> (10/08/14 12:51:21)
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
freebsd/sys/sys/linker_set.h
r454d682 r9cea6da 52 52 __section("set_" #set) __used = &sym 53 53 #else /* __rtems__ */ 54 #define RTEMS_BSD_DEFINE_SET(set, ptype) \55 ptype *const __CONCAT(_bsd__start_set_,set)[0] \54 #define RTEMS_BSD_DEFINE_SET(set, type) \ 55 type const __CONCAT(_bsd__start_set_,set)[0] \ 56 56 __section(".rtemsroset.bsd." __STRING(set) ".begin") __used; \ 57 ptype *const __CONCAT(_bsd__stop_set_,set)[0] \57 type const __CONCAT(_bsd__stop_set_,set)[0] \ 58 58 __section(".rtemsroset.bsd." __STRING(set) ".end") __used 59 59 60 #define RTEMS_BSD_DECLARE_SET(set, type) \ 61 extern type const __CONCAT(_bsd__start_set_,set)[0]; \ 62 extern type const __CONCAT(_bsd__stop_set_,set)[0] 63 64 #define RTEMS_BSD_DEFINE_SET_ITEM(set, sym, type) \ 65 static type const __set_##set##_sym_##sym \ 66 __section(".rtemsroset.bsd." __STRING(set) ".content") __used 67 60 68 #define __MAKE_SET(set, sym) \ 61 static const void * const __set_##set##_sym_##sym \ 62 __section(".rtemsroset.bsd." __STRING(set) ".content") __used = &sym 69 RTEMS_BSD_DEFINE_SET_ITEM(set, sym, const void *) = &sym 63 70 64 #define RTEMS_BSD_DEFINE_RWSET(set, ptype) \65 ptype *__CONCAT(_bsd__start_set_,set)[0] \71 #define RTEMS_BSD_DEFINE_RWSET(set, type) \ 72 type __CONCAT(_bsd__start_set_,set)[0] \ 66 73 __section(".rtemsrwset.bsd." __STRING(set) ".begin") __used; \ 67 ptype *__CONCAT(_bsd__stop_set_,set)[0] \74 type __CONCAT(_bsd__stop_set_,set)[0] \ 68 75 __section(".rtemsrwset.bsd." __STRING(set) ".end") __used 69 76 77 #define RTEMS_BSD_DECLARE_RWSET(set, type) \ 78 extern type __CONCAT(_bsd__start_set_,set)[0]; \ 79 extern type __CONCAT(_bsd__stop_set_,set)[0] 80 81 #define RTEMS_BSD_DEFINE_RWSET_ITEM(set, sym, type) \ 82 static type __set_##set##_sym_##sym \ 83 __section(".rtemsrwset.bsd." __STRING(set) ".content") __used 84 70 85 #define __MAKE_RWSET(set, sym) \ 71 static const void * __set_##set##_sym_##sym \ 72 __section(".rtemsrwset.bsd." __STRING(set) ".content") __used = &sym 86 RTEMS_BSD_DEFINE_RWSET_ITEM(set, sym, const void *) = &sym 73 87 #endif /* __rtems__ */ 74 88 #else /* !__GNUCLIKE___SECTION */ … … 105 119 #else /* __rtems__ */ 106 120 #define SET_DECLARE(set, ptype) \ 107 extern ptype * const __CONCAT(_bsd__start_set_,set)[]; \ 108 extern ptype * const __CONCAT(_bsd__stop_set_,set)[] 121 RTEMS_BSD_DECLARE_SET(set, ptype *) 109 122 110 123 #define RWSET_DECLARE(set, ptype) \ 111 extern ptype *__CONCAT(_bsd__start_set_,set)[]; \ 112 extern ptype *__CONCAT(_bsd__stop_set_,set)[] 124 RTEMS_BSD_DECLARE_RWSET(set, ptype *) 113 125 114 126 #define SET_BEGIN(set) \ -
rtemsbsd/rtems/rtems-bsd-init.c
r454d682 r9cea6da 59 59 SYSINIT_DRIVER_REFERENCE(nexus, root); 60 60 61 RTEMS_BSD_DEFINE_SET(modmetadata_set, struct mod_metadata );62 RTEMS_BSD_DEFINE_SET(sysctl_set, struct sysctl_oid );61 RTEMS_BSD_DEFINE_SET(modmetadata_set, struct mod_metadata *); 62 RTEMS_BSD_DEFINE_SET(sysctl_set, struct sysctl_oid *); 63 63 64 RTEMS_BSD_DEFINE_RWSET(sysinit_set, struct sysinit );64 RTEMS_BSD_DEFINE_RWSET(sysinit_set, struct sysinit *); 65 65 66 66 /* In FreeBSD this is a local function */
Note: See TracChangeset
for help on using the changeset viewer.