Michael Brown
dc60c24146
[i386] Rename __cdecl to __asmcall
__cdecl is a misleading name, since it currently encapsulates both
cdecl and regparm(0) attributes. Rename to __asmcall.
16 anos atrás
Michael Brown
afe1323c76
[compiler] Allow for selective disabling of debug levels at runtime
The usefulness of DBGLVL_IO is limited by the fact that many cards
require large numbers of uninteresting I/O reads/writes at device
probe time, typically when driving a bit-bashing I2C/SPI bus to read
the MAC address.
This patch adds the DBG_DISABLE() and DBG_ENABLE() macros, which can
be used to temporarily disable and re-enable selected debug levels.
Note that debug levels must still be enabled in the build in order to
function at all: you can't use DBG_ENABLE(DBGLVL_IO) in an object
built with DEBUG=object:1 and expect it to do anything.
16 anos atrás
Michael Brown
9b01a9fd9c
[compiler] Add __always_inline macro
16 anos atrás
Michael Brown
0d91c37ce5
[legacy] Align legacy drivers' __shared data to the maximum possible
Some drivers that still use the legacy-driver wrapper (tg3 in particular)
apparently do not specify their alignment constraints properly. This
hack forces any __shared data to be maximally aligned.
Note that this provides only 16-byte alignment; it is not possible to
request alignment to any greater than 16 bytes using
__attribute__((aligned)), since the relocation code will preserve only 16
byte alignment (and operation under -DKEEP_IT_REAL cannot preserve more
that 16 byte alignment).
Idea proposed by Tim Hockin <thockin@google.com >
16 anos atrás
Michael Brown
604c934981
Add DBGLVL_IO to trace all memory-mapped I/O.
16 anos atrás
Holger Lubitz
2220e1a676
define malloc attribute
17 anos atrás
Holger Lubitz
3859abb7de
define __nonnull
17 anos atrás
Holger Lubitz
e8b8991b84
define __pure and __const
17 anos atrás
Michael Brown
800c8b014b
Add barrier() primitive (was present in Eb5.4), used by some currently
out-of-tree driver code.
17 anos atrás
Michael Brown
a895fd0c15
Add barrier() primitive (was present in Eb5.4), used by some currently
out-of-tree driver code.
17 anos atrás
Holger Lubitz
e3d10ac673
define __nonnull
17 anos atrás
Holger Lubitz
cd619a1eec
define __pure and __const
17 anos atrás
Michael Brown
a6a1052096
Applied a modified version of holger's regparm patches.
17 anos atrás
Michael Brown
9aa61ad5a2
Add per-file error identifiers
17 anos atrás
Michael Brown
395c76e94d
Use "dbg_stream" rather than "stream" as a variable name in
DBG_AC_IF(), to avoid namespace collisions.
17 anos atrás
Michael Brown
d12770e254
console.h is no longer needed for debugging
17 anos atrás
Michael Brown
f781a98ac4
Add DBGLVL_PROFILE
17 anos atrás
Michael Brown
3b77c7aa1b
Hex dumps are now integrated into the DBG() framework.
17 anos atrás
Michael Brown
2494625702
Added auto-colourising DBGC() macro
18 anos atrás
Michael Brown
b16de6ae66
Inhibit compiler warnings on DBG() when building a non-debug object,
while retaining the format string checking.
18 anos atrás
Marty Connor
e2aca77132
update DBG_DISCARD macro to allow the compiler to see the argument for compile-time checking, while still having it optimized away during compilation
18 anos atrás
Michael Brown
50415b3aca
Make DBG_DISCARD correct
18 anos atrás
Michael Brown
af23ff8a24
Assertions are now handled via the POSIX-like <assert.h>.
18 anos atrás
Michael Brown
a96759f9c8
Use "#var" rather than "@c var" for doxygen.
19 anos atrás
Michael Brown
a9fabe7546
Doxygenation
19 anos atrás
Michael Brown
484d6e7d24
__attribute__ does not need to be treated as a variadic macro, since
it is always used as __attribute__((...)). Since variadic macros seem
to confuse poor doxygen, change it to a single-valued macro.
19 anos atrás
Michael Brown
75a90cb143
Hide __attribute__ from doxygen
19 anos atrás
Michael Brown
3bbf5f28a3
Use __unused instead of __used for static data structures.
Remove compiler.h defines from osdep.h
19 anos atrás
Michael Brown
f0d048bf91
Added ASSERT() macro
19 anos atrás
Michael Brown
68e90c75b6
Removed spurious semicolon
19 anos atrás
Michael Brown
60b82eb5cd
Moved definition of __shared into compiler.h
19 anos atrás
Michael Brown
1ddcdb0524
Added PREFIX_OBJECT() function to be able to easily prepend any string
to the object name in order to generate e.g. per-file variables.
19 anos atrás
Michael Brown
f972f256e6
Allow for multiple debug levels
19 anos atrás
Michael Brown
4e3ebba8e6
Revert debug message prefix back to none, since we sometimes want to use
DBG() several times to build up a line.
19 anos atrás
Michael Brown
905ca1f21d
Force a standard format upon debug messages.
19 anos atrás
Michael Brown
063140864e
Automatically drag in console.h if DBG() is being defined as printf().
19 anos atrás
Michael Brown
dcd573afcb
Automatically create DBG() macro based on debug_<object> macro.
19 anos atrás
Michael Brown
0ff80b477d
Merged mcb30-realmode-redesign back to HEAD
19 anos atrás