diff options
author | truebrain <truebrain@openttd.org> | 2012-01-01 16:38:38 +0000 |
---|---|---|
committer | truebrain <truebrain@openttd.org> | 2012-01-01 16:38:38 +0000 |
commit | da460f6928851dee007fab7637c75a242398370c (patch) | |
tree | 064767bec947435064f00584c97d9e13518b6aca | |
parent | 3b2ecfab010426d2dac7918e6e32463d6b9e47f2 (diff) | |
download | openttd-da460f6928851dee007fab7637c75a242398370c.tar.xz |
(svn r23703) -Codechange: allow a compiler to inline a wrapper function, avoiding creation of a function stack, massively increasing its speed, for a function that is called often
-rw-r--r-- | src/newgrf.cpp | 12 | ||||
-rw-r--r-- | src/newgrf.h | 13 |
2 files changed, 13 insertions, 12 deletions
diff --git a/src/newgrf.cpp b/src/newgrf.cpp index 4d58fe590..49f3f8ab8 100644 --- a/src/newgrf.cpp +++ b/src/newgrf.cpp @@ -66,7 +66,7 @@ static SmallVector<GRFFile *, 16> _grf_files; /** Miscellaneous GRF features, set by Action 0x0D, parameter 0x9E */ -static byte _misc_grf_features = 0; +byte _misc_grf_features = 0; /** 32 * 8 = 256 flags. Apparently TTDPatch uses this many.. */ static uint32 _ttdpatch_flags[8]; @@ -9062,13 +9062,3 @@ void LoadNewGRF(uint load_index, uint file_index) _tick_counter = tick_counter; _display_opt = display_opt; } - -/** - * Check for grf miscelaneous bits - * @param bit The bit to check. - * @return Whether the bit is set. - */ -bool HasGrfMiscBit(GrfMiscBit bit) -{ - return HasBit(_misc_grf_features, bit); -} diff --git a/src/newgrf.h b/src/newgrf.h index 6137654ab..74a95f8b8 100644 --- a/src/newgrf.h +++ b/src/newgrf.h @@ -15,6 +15,7 @@ #include "cargotype.h" #include "rail_type.h" #include "fileio_type.h" +#include "core/bitmath_func.hpp" /** * List of different canal 'features'. @@ -162,6 +163,17 @@ struct GRFLoadedFeatures { ShoreReplacement shore; ///< It which way shore sprites were replaced. }; +/** + * Check for grf miscelaneous bits + * @param bit The bit to check. + * @return Whether the bit is set. + */ +static inline bool HasGrfMiscBit(GrfMiscBit bit) +{ + extern byte _misc_grf_features; + return HasBit(_misc_grf_features, bit); +} + /* Indicates which are the newgrf features currently loaded ingame */ extern GRFLoadedFeatures _loaded_newgrf_features; @@ -173,7 +185,6 @@ void ResetPersistentNewGRFData(); void CDECL grfmsg(int severity, const char *str, ...) WARN_FORMAT(2, 3); -bool HasGrfMiscBit(GrfMiscBit bit); bool GetGlobalVariable(byte param, uint32 *value, const GRFFile *grffile); StringID MapGRFStringID(uint32 grfid, StringID str); |