mirror of
https://github.com/ipxe/ipxe
synced 2026-04-16 03:00:10 +03:00
gcc is rather over-aggressive about optimising out static data structures
even when __atribute__ (( unused )) is correctly set...
This commit is contained in:
@@ -131,7 +131,7 @@
|
||||
* ...
|
||||
* }
|
||||
*
|
||||
* static struct frob my_frobnicator __frobnicator = {
|
||||
* struct frob my_frobnicator __frobnicator = {
|
||||
* .name = "my_frob",
|
||||
* .frob = my_frob,
|
||||
* };
|
||||
@@ -184,7 +184,7 @@
|
||||
*
|
||||
* @code
|
||||
*
|
||||
* static struct my_foo __table ( foo, 01 ) = {
|
||||
* struct my_foo __table ( foo, 01 ) = {
|
||||
* ...
|
||||
* };
|
||||
*
|
||||
|
||||
@@ -49,12 +49,12 @@ struct init_fn {
|
||||
#define INIT_RPC 11
|
||||
|
||||
/* Macro for creating an initialisation function table entry */
|
||||
#define INIT_FN( init_order, init_func, reset_func, exit_func ) \
|
||||
static struct init_fn PREFIX_OBJECT(init_fn__) \
|
||||
__table ( init_fn, init_order ) = { \
|
||||
.init = init_func, \
|
||||
.reset = reset_func, \
|
||||
.exit = exit_func, \
|
||||
#define INIT_FN( init_order, init_func, reset_func, exit_func ) \
|
||||
struct init_fn PREFIX_OBJECT(init_fn__) \
|
||||
__table ( init_fn, init_order ) = { \
|
||||
.init = init_func, \
|
||||
.reset = reset_func, \
|
||||
.exit = exit_func, \
|
||||
};
|
||||
|
||||
/* Function prototypes */
|
||||
|
||||
@@ -54,7 +54,7 @@ struct isa_driver {
|
||||
*
|
||||
*/
|
||||
#define ISA_DRIVER( _name, _probe_addrs, _probe_addr, _mfg_id, _prod_id ) \
|
||||
static struct isa_driver _name __table(isa_driver,01 ) = { \
|
||||
struct isa_driver _name __table(isa_driver,01 ) = { \
|
||||
.probe_addrs = _probe_addrs, \
|
||||
.addr_count = sizeof ( _probe_addrs ) / sizeof ( _probe_addrs[0] ), \
|
||||
.probe_addr = _probe_addr, \
|
||||
|
||||
Reference in New Issue
Block a user