Base gcc fails to compile sys/dev/liquidio/lio_main.c for i386, with
the following -Werror warnings:
cc1: warnings being treated as errors /usr/src/sys/modules/lio/../../dev/liquidio/lio_main.c: In function 'lio_setup_glists': /usr/src/sys/modules/lio/../../dev/liquidio/lio_main.c:1774: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] /usr/src/sys/modules/lio/../../dev/liquidio/lio_main.c:1775: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
This is because on i386, the casts from uint64_t to a pointer reduce
the values from 64 bit to 32 bit, and vice versa.
For gcc, this can be fixed by intermediate casts to uintptr_t. Note
that I am assuming the incoming values will always fit into 32 bit!