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.
il y a 15 ans
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.
il y a 15 ans
Michael Brown
9b01a9fd9c
[compiler] Add __always_inline macro
il y a 16 ans
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 >
il y a 16 ans
Michael Brown
604c934981
Add DBGLVL_IO to trace all memory-mapped I/O.
il y a 16 ans
Holger Lubitz
2220e1a676
define malloc attribute
il y a 17 ans
Holger Lubitz
3859abb7de
define __nonnull
il y a 17 ans
Holger Lubitz
e8b8991b84
define __pure and __const
il y a 17 ans
Michael Brown
800c8b014b
Add barrier() primitive (was present in Eb5.4), used by some currently
out-of-tree driver code.
il y a 17 ans
Michael Brown
a895fd0c15
Add barrier() primitive (was present in Eb5.4), used by some currently
out-of-tree driver code.
il y a 17 ans
Holger Lubitz
e3d10ac673
define __nonnull
il y a 17 ans
Holger Lubitz
cd619a1eec
define __pure and __const
il y a 17 ans
Michael Brown
a6a1052096
Applied a modified version of holger's regparm patches.
il y a 17 ans
Michael Brown
9aa61ad5a2
Add per-file error identifiers
il y a 17 ans
Michael Brown
395c76e94d
Use "dbg_stream" rather than "stream" as a variable name in
DBG_AC_IF(), to avoid namespace collisions.
il y a 17 ans
Michael Brown
d12770e254
console.h is no longer needed for debugging
il y a 17 ans
Michael Brown
f781a98ac4
Add DBGLVL_PROFILE
il y a 17 ans
Michael Brown
3b77c7aa1b
Hex dumps are now integrated into the DBG() framework.
il y a 17 ans
Michael Brown
2494625702
Added auto-colourising DBGC() macro
il y a 17 ans
Michael Brown
b16de6ae66
Inhibit compiler warnings on DBG() when building a non-debug object,
while retaining the format string checking.
il y a 18 ans
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
il y a 18 ans
Michael Brown
50415b3aca
Make DBG_DISCARD correct
il y a 18 ans
Michael Brown
af23ff8a24
Assertions are now handled via the POSIX-like <assert.h>.
il y a 18 ans
Michael Brown
a96759f9c8
Use "#var" rather than "@c var" for doxygen.
il y a 19 ans
Michael Brown
a9fabe7546
Doxygenation
il y a 19 ans
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.
il y a 19 ans
Michael Brown
75a90cb143
Hide __attribute__ from doxygen
il y a 19 ans
Michael Brown
3bbf5f28a3
Use __unused instead of __used for static data structures.
Remove compiler.h defines from osdep.h
il y a 19 ans
Michael Brown
f0d048bf91
Added ASSERT() macro
il y a 19 ans
Michael Brown
68e90c75b6
Removed spurious semicolon
il y a 19 ans
Michael Brown
60b82eb5cd
Moved definition of __shared into compiler.h
il y a 19 ans
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.
il y a 19 ans
Michael Brown
f972f256e6
Allow for multiple debug levels
il y a 19 ans
Michael Brown
4e3ebba8e6
Revert debug message prefix back to none, since we sometimes want to use
DBG() several times to build up a line.
il y a 19 ans
Michael Brown
905ca1f21d
Force a standard format upon debug messages.
il y a 19 ans
Michael Brown
063140864e
Automatically drag in console.h if DBG() is being defined as printf().
il y a 19 ans
Michael Brown
dcd573afcb
Automatically create DBG() macro based on debug_<object> macro.
il y a 19 ans
Michael Brown
0ff80b477d
Merged mcb30-realmode-redesign back to HEAD
il y a 19 ans