Commit Graph

1101 Commits

Author SHA1 Message Date
f1a1f023df reinstate aligned_allocator.h (required at work)
further fixes to preserve the last error while building error messages
somewhat more accurate NUMA factor computation

This was SVN commit r9545.
2011-05-23 14:10:45 +00:00
1075e206f7 Fix some format string errors
This was SVN commit r9534.
2011-05-18 19:10:36 +00:00
0ea42d3185 avoid stomping on the last error while dumping stack
refs #849

This was SVN commit r9519.
2011-05-15 00:00:01 +00:00
963960fafa no longer warn when SetFileValidData fails, as it does on all FAT volumes (boo)
fixes #849

This was SVN commit r9511.
2011-05-14 10:37:42 +00:00
9b7cdef124 ensure WHRT debug messages are always displayed (in case of compatibility trouble)
refs #709

This was SVN commit r9485.
2011-05-08 09:14:21 +00:00
46e5db4dc4 fix build with ICC
This was SVN commit r9475.
2011-05-07 15:47:20 +00:00
f608b44d1d fix self-test and map load on Windows (avoid mixing dir separators).
add more specific error codes (used at work)

This was SVN commit r9462.
2011-05-06 18:45:30 +00:00
0a7aeb23f7 smbios fix
This was SVN commit r9458.
2011-05-06 14:54:46 +00:00
1da3cdb498 Fix build errors
This was SVN commit r9453.
2011-05-05 20:24:22 +00:00
5c76bc12fa refactor status code definitions: allow modules to define an array of them (more convenient+efficient).
merge ERR::NO_SYS, NOT_IMPLEMENTED into NOT_SUPPORTED
renderer: remove unnecessary ogl_shader include

This was SVN commit r9447.
2011-05-05 13:03:34 +00:00
fd561cb88b hotloading fix on Windows
refs #781

This was SVN commit r9446.
2011-05-05 10:50:47 +00:00
9719432ff9 fix memory leak (wasn't freeing the entire chain of SMBIOS structures)
This was SVN commit r9425.
2011-05-04 13:08:09 +00:00
a7152270f4 Path now goes to some trouble to prevent mixing / and \ slashes (causes trouble when hotloading, and some Windows APIs can't handle it, either)
WARNING: that means stuff like Path(nativeDataPath/"art/") is forbidden
and will raise errors on Windows when nativeDataPath contains \. always
use /"" to add a trailing slash. never embed "/" in OsPath component
strings (it's OK for VFS strings since they consistently use /).

wdir_watch, CmdLineArgs: avoid mixed separators
wutil: remove overzealous assertion (infinite recursion if an error
arose before we create a window)

refs #781

This was SVN commit r9424.
2011-05-04 12:16:51 +00:00
7523894760 ENSURE(0) -> DEBUG_WARN_ERR(ERR::LOGIC) (a bit smaller, and more descriptive)
This was SVN commit r9423.
2011-05-04 12:10:17 +00:00
9733affb05 Fix non-PCH build
This was SVN commit r9419.
2011-05-04 01:17:09 +00:00
178a700c16 Fix build
This was SVN commit r9412.
2011-05-03 15:58:25 +00:00
cce3bebe0c fix error propagation/avoid SetLastError pollution
This was SVN commit r9411.
2011-05-03 13:46:35 +00:00
cccd6849a7 cleanup (requires update-workspaces)
lib_errors.cpp: replace with status.cpp, adapt to needs at work
wutil: fix runtime warning reported via feedback box
config: merge CONFIG_PARANOIA and !CONFIG_FINAL into
CONFIG_ENABLE_CHECKS
add openmp, pointer_typedefs.h

This was SVN commit r9410.
2011-05-03 12:38:42 +00:00
88c44c7d73 smbios: add support for structures 34,35,36,39,41 (found on rather new BIOS)
This was SVN commit r9377.
2011-05-01 12:18:45 +00:00
791ecee26b Build fixes
This was SVN commit r9365.
2011-04-30 13:55:55 +00:00
5ca66fc757 cleanup: move ADTs into lib/adts (separate files). fix definition of ASSERT
This was SVN commit r9364.
2011-04-30 13:35:36 +00:00
0720025073 cleanup
reduce dependency on PCH. move KiB constants to alignment, ARRAY_SIZE to
code_annotation.h.
move glext_funcs.h to external_libraries/glext_funcs.h, move part of
ogl.h to external_libraries/opengl.h
remove unused saturating arithmetic functions

This was SVN commit r9363.
2011-04-30 13:22:46 +00:00
4663ac0fe7 split debug_assert into ENSURE and ASSERT as discussed in a previous meeting.
the old debug_assert always ran and tested the expression, which slows
down release builds. wrapping them in #ifndef NDEBUG is clumsy. the new
ASSERT behaves like assert and ENSURE like the old debug_assert. Let's
change any time-critical but not-super-important ENSURE to ASSERT to
speed up release builds. (already done in bits.h and unique_range.h)

This was SVN commit r9362.
2011-04-30 13:01:45 +00:00
6c915291cc cleanup (requires update-workspaces):
major refactor of wfilesystem - remove gotos and workaround for FAT file
times
replace more round_up of constants with Align<>
remove old unused allocators (STL aligned, matrix, some shared_ptr)
move allocator utils into separate headers.
remove lockfree, wterminal
avoid testing __cplusplus

This was SVN commit r9361.
2011-04-30 12:34:28 +00:00
9bdb54bc76 fix failure to preallocate disk space on Windows by always rounding up the file size regardless of the io::Parameters
This was SVN commit r9358.
2011-04-30 09:13:10 +00:00
1139124451 Fix some build errors and warnings
This was SVN commit r9351.
2011-04-29 20:38:13 +00:00
2374caac3e major refactor of file/io and alignment code. requires update-workspaces
. completely rewrite waio - use IOCP, add several hardcore
optimizations. now outperforms the
  AS SSD and ATTO benchmarks when writing
. refactor file interface - use LIO_READ instead of 'r', allow access to
file descriptor.
. completely rewrite the IO wrapper. now much more simple, less CPU
overhead, adds
  support for pre-issue/post-completion hooks and preallocation.
  io::Run defaults to simple synchronous IO; use io::Parameters to get
asynchronous.
. add alignment.h with constants and Align() function template (more
efficient than
  round_up for compile-time constants)
. add UniqueRange - similar to C++0x unique_ptr (emulated for C++03),
plus a
  built-in size. avoids expensive thread-safe reference counting in
shared_ptr.

cleanup:
- move fat_time functions into archive_zip
- remove no longer needed io_align and block_cache
- reduce dependencies in sysdep/compiler (move parts to
code_annotation.h)
- move IOCP into separate file (reused by waio)

This was SVN commit r9350.
2011-04-29 19:10:34 +00:00
5a773d4ca0 Be robust to null proxy URL strings. Should fix #778.
This was SVN commit r9299.
2011-04-22 16:05:00 +00:00
b35d3a5e3d __cpuidex was added in VC2008 SP1, so don't use it if pre-SP1
This was SVN commit r9284.
2011-04-19 23:23:16 +00:00
a3812af176 smbios: avoid warning when no information is returned (happens on 32-bit XP)
This was SVN commit r9218.
2011-04-09 17:09:48 +00:00
c59f7bcb8f Fix Clang warning ("operands of ? are integers of different signs")
This was SVN commit r9214.
2011-04-09 00:07:21 +00:00
d46a892a5d smbios: avoid displaying unknown maxError value; add enumerators for BIOS characteristics and extended characteristics
This was SVN commit r9207.
2011-04-08 07:10:31 +00:00
5b7dbe6bc9 smbios: more convenient interface that avoids having to check if the structures pointer is null (can still detect failure by checking whether all/guaranteed member pointers are zero)
This was SVN commit r9200.
2011-04-07 19:35:45 +00:00
b5c6868ac2 smbios SystemSlot fix: add missing field, avoid displaying unknown device/function numbers
This was SVN commit r9199.
2011-04-07 19:28:24 +00:00
aab98f90e0 Fix startup crash on non-Windows
This was SVN commit r9197.
2011-04-07 17:22:28 +00:00
e1b9083c41 Fix probable OS X build error
This was SVN commit r9196.
2011-04-07 17:18:32 +00:00
99aa427ffa make use of SMBIOS information to detect CPU frequency and memory size
smbios fixes: also ignore max value (used by Dell BIOS to report invalid
MemoryDevice bit width); fix incorrect error check that caused 0 to be
returned on all but the first call; add implicit conversion operator to
allow using size without appending .value

This was SVN commit r9195.
2011-04-07 17:06:00 +00:00
dcde67038f ICC compile fixes (VC's overload resolution is apparently quite different)
This was SVN commit r9169.
2011-04-05 17:45:47 +00:00
1c2e410b7d final smbios improvements.
add comments
add support for bit flags
use wrapper classes and SFINAE instead of flags to detect enums / sizes
/ handles
avoid potential truncation of byte sizes
avoid displaying numeric_limits::min values ("unknown")

This was SVN commit r9168.
2011-04-05 17:14:18 +00:00
d3ba9a24d3 Fix GCC build errors ("explicit template specialization cannot have a storage class",
"need 'typename' before 'static_assert_<...>::type' because
'static_assert_<...>' is a dependent scope").
Fixes #767.

This was SVN commit r9167.
2011-04-05 17:07:06 +00:00
3dbb29d665 smbios improvements: add specializations for bool/Handle (no longer requires a flag); omit empty/meaningless fields
convert remaining enumerators to ENUM, lowercase them to avoid conflicts
with macros, wrap them in struct to allow identical enumerator names

This was SVN commit r9165.
2011-04-05 09:52:57 +00:00
f35da41a0c smbios: minor fixes, add partial support for displaying enumerator names, move visitors to .cpp, use pragma pack regardless of compiler
This was SVN commit r9163.
2011-04-04 17:44:36 +00:00
68bc0a5651 smbios: add support for stringizing the structures
This was SVN commit r9162.
2011-04-04 16:50:02 +00:00
a2bad46f27 smbios fixes:
- memmove all bytes in the table, not just 8
- end pointer was off by 4
- add support for structures 8,10,22,26,27,28

This was SVN commit r9161.
2011-04-04 15:01:40 +00:00
0ddf2b0f34 Fix build on VC2008
This was SVN commit r9157.
2011-04-03 21:41:17 +00:00
231387d2da linux compile fix (explicit instantiation must be at namespace scope), adjust end pointer to match 8 bytes removed in workaround
This was SVN commit r9153.
2011-04-03 19:29:16 +00:00
2c72e1f364 (requires update-workspaces)
add initial SMBIOS implementation for retrieving system information
wacpi -> wfirmware (now also used to retrieve SMBIOS table)

This was SVN commit r9144.
2011-04-03 15:38:48 +00:00
6026330fce updated version of Aken that includes support for MSR and static validation (-> .c instead of .cpp)
closes #754 (please re-open if not)

This was SVN commit r9137.
2011-04-01 15:06:52 +00:00
d5b3201bfe noted while checking MSR prerequisites that the previous HasNehalem is inaccurate. PLATFORM_INFO is also supported by newer processors (e.g. Sandy Bridge), whereas UNCORE_* are tied to Nehalem and Westmere => split up HasNehalem into HasPlatformInfo and HasUncore. (the latter has been replaced by a "system agent" in newer designs)
refs #754

This was SVN commit r9136.
2011-03-31 21:30:42 +00:00
c396997009 fixes from work: avoid potential 0-pointer dereference in freelist, also avoid branching in freelist functions via sentinel
wdll_main.h: avoid warning for DLLs using TLS
file_system_util.h: export functions

This was SVN commit r9128.
2011-03-28 12:28:29 +00:00
9193ba56f9 Build fixes and whatnot
This was SVN commit r9115.
2011-03-23 21:15:22 +00:00
1f7e8d7194 per discussion with Philip, remove STL_HASH_MAP etc. because they're ugly, rarely used and superseded by boost::unordered*
This was SVN commit r9111.
2011-03-23 16:56:27 +00:00
588bfa11bf remove unnecessary utf8 includes
This was SVN commit r9110.
2011-03-23 16:32:44 +00:00
0999ba0941 refactoring:
- simplify sys_get_executable_name interface - return OsPath directly,
rename to sys_ExecutablePathname
- add validation of path components in GetDirectoryEntries
- replace multiple calls to GetModuleFileNameW with
sys_ExecutablePathname
- lift nearly all MAX_PATH limitations (required at work)

This was SVN commit r9109.
2011-03-23 16:14:47 +00:00
64a02932e3 refactor headers: path_util -> path, native_path -> os_path, remove where unnecessary
This was SVN commit r9108.
2011-03-23 14:43:35 +00:00
dcd192cb60 refactor path interface:
- use wrapper class instead of std::wstring (reduces mixing of
strings/paths; allows safe+easy join via operator/ and convenient
case-insensitive comparison via operator==, avoids NativePathFromString,
similar to boost::filesystem)
- NativePath -> OsPath
- add hash and To/FromJSVal for Path
- add TS_ASSERT_PATH_EQUALS
- replace _wfopen_s with sys_OpenFile
- remove obsolete SortFiles/Directories

This was SVN commit r9107.
2011-03-23 13:36:20 +00:00
c4cd85bb98 Build fixes
This was SVN commit r9100.
2011-03-22 18:46:39 +00:00
c0a105432e Use path types and conversions more consistently.
This was SVN commit r9094.
2011-03-21 22:59:00 +00:00
83271ec816 Fix build errors.
Fix VFS root directory failing IsDirectory, which breaks the search for
textures.xml.
Fix incompatible change to loose cache name determination.

This was SVN commit r9092.
2011-03-21 21:06:08 +00:00
c3405e6f50 path improvements/fixes:
- replace more std::wstring with Native or VfsPath; wstring_from_utf8 ->
NativePathFromString
- replace sequences of Join(Path(), Basename+extension) with
ChangeExtension in wsdl, CacheLoader
- add Path::IsDirectory to replace .empty() / path_is_dir_sep(.back()).
also changed behavior to reflect the fact that "" is the VFS root
_directory_
- Path::Join now allows 2 identical path types (e.g. VfsPath) or one
char* literal (prevents inadvertently introducing non-safe characters).
to convert from wstring or wchar_t, use an explicit ctor (e.g.
VfsPath(wchar_t_string))

This was SVN commit r9091.
2011-03-21 19:54:08 +00:00
6d25329412 # towards locale-independent pathnames on Linux
c.f.
http://www.wildfiregames.com/forum/index.php?showtopic=14541&st=0&p=217250&#entry217250
and 2011-03-19 meeting

This was SVN commit r9090.
2011-03-21 17:53:13 +00:00
9a22dc1351 warning fixes
This was SVN commit r9088.
2011-03-21 11:55:49 +00:00
44e1a863e1 Fix cache detection assertion failure
This was SVN commit r9085.
2011-03-19 15:16:14 +00:00
0af8cdc54a Fix likely cache table typos, based on Intel Software Developer's Manual.
This was SVN commit r9084.
2011-03-19 15:03:25 +00:00
fb499ff0d0 further refactoring of new cache detect code
- add invariant - level/type are always valid, numEntries indicates
whether the cache is actually present and not disabled
- handle pseudo-descriptors 0xF0 and F1 (avoids warning)

This was SVN commit r9083.
2011-03-19 12:48:56 +00:00
89b7b6b52d Avoid divide-by-zero on AMDs with missing caches
This was SVN commit r9081.
2011-03-18 19:48:54 +00:00
22a651bb86 Fix assertion failure when no L3 cache.
Fix typo.

This was SVN commit r9078.
2011-03-18 18:42:10 +00:00
ecbd0ae31b Fix Windows build.
Improve compatibility with GL1.3.

This was SVN commit r9077.
2011-03-18 18:07:18 +00:00
5b91e2d7ab move cache detection into separate file.
add support for CPUID.2 cache descriptors (many Bothans died to bring us
this information)
simplify the API - use one structure to describe cache and TLB; only one
accessor for both.

HWDetect: version change, since dtlbs and itlbs are no longer
distinguished

fixes #752

This was SVN commit r9074.
2011-03-18 16:44:03 +00:00
a0a245d0ec sync with work. add u8_from_larger, sys_IsDebuggerPresent, wdll_main.h;
robustify waio file mode and remove a safety check (since
OVERLAPPED.Internal is documented to be subject to change)

This was SVN commit r9050.
2011-03-11 16:29:27 +00:00
b4d9ab336b Simplify hiding of system cursor on non-Windows.
Fixes #683.

This was SVN commit r9038.
2011-03-06 00:48:26 +00:00
d3929b6af1 Actually, delete the cpuid() inline asm entirely since it still causes various problems in various compilers
This was SVN commit r9024.
2011-03-05 14:11:57 +00:00
712a92caa1 Save PIC register in cpuid() to fix "can't find a register in class 'BREG'" error in some versions of GCC
This was SVN commit r9023.
2011-03-05 13:53:02 +00:00
2229c10e05 Delete rint/rintf emulation for Windows, since it got broken (the tests fail) and we don't use it any more
This was SVN commit r9015.
2011-03-04 23:16:04 +00:00
bb562ce179 fixes:
avoid reporting a (not-present) third-level cache for Athlon X2 that
don't have one
add better documentation of cache information
ensure we're running on the same CPU while retrieving cache/TLB
descriptors
wgfx: always check all known graphics driver names (more robust in the
face of changing gfx_card strings), correct the intel driver name

This was SVN commit r8991.
2011-02-26 19:22:02 +00:00
567a698628 check all file names known to belong to a GPU's drivers instead of trying to rule out 32/64 bit variants
fixes #737

This was SVN commit r8990.
2011-02-26 17:10:09 +00:00
4e8c305c6e sync with work - export app_hooks_update; add boost replacement FileExists and FileSize; avoid conflict with stdint.h;
remove asm rintf implementation (sse is faster); avoid the need for an
external 64-bit asm file with vc2008/vc2010; allow arbitrarily long
command line args

This was SVN commit r8985.
2011-02-25 16:31:42 +00:00
e370223d1d Fix register handle leak
This was SVN commit r8971.
2011-02-21 22:25:51 +00:00
abe07e096a Build fix
This was SVN commit r8970.
2011-02-21 22:22:49 +00:00
9bbda8b80b HTTP proxy discovery for Windows
This was SVN commit r8969.
2011-02-21 21:54:47 +00:00
b2f5dd1b62 Non-PCH build fixes
This was SVN commit r8949.
2011-02-19 22:30:34 +00:00
a02a5d8e5e refactor graphics driver detect code, ensure both variants return name.dll(version)
This was SVN commit r8945.
2011-02-19 20:46:43 +00:00
83569c8f13 detect when detecting OpenGL driver version failed because the driver didn't describe itself in the registry;
fall back to detecting the version of the driver DLL (whose name we
guess)

This was SVN commit r8944.
2011-02-19 20:24:38 +00:00
7445342b61 wdll_ver: avoid errors while reading DLL version due to (lack of) FS redirection
UserReport: avoid windows iterator debugging warning due to invalid
operator[]

This was SVN commit r8942.
2011-02-19 19:15:00 +00:00
1b1230ca3e wgl compile fix: add types required by new wglext.h
wutsname fix (noticed by Philip from hwdetect information, thanks!):
uname.release wasn't always set.
BinarySerializer.h: warning fix

This was SVN commit r8940.
2011-02-19 18:00:09 +00:00
ceb4bc9b94 Report more hardware details
This was SVN commit r8937.
2011-02-19 00:39:32 +00:00
ddba0cc311 topology.cpp: fix for non-contiguous APIC IDs
wcpu: avoid undefined shift right on 64-CPU systems (caught via
assertion)
filesystem: add wrename
path_util: add std::wstring variants of common boost::filesystem
routines

This was SVN commit r8922.
2011-02-15 10:38:11 +00:00
fd46b9e370 fixes/improvements from work:
file/wfilesystem: avoid error dialog when opening a file that doesn't
exist
precompiled/pch_warnings: remove push/pop that prevented our warning
disables to applying to other code. update comments
topology: refactor APIC field access and add support for constructing
APIC ID from topology
waio: add file_attribute_normal
wsysdep: slightly safer sys_generate_random_bytes implementation

This was SVN commit r8869.
2011-01-28 13:40:07 +00:00
002e3f5606 minor fixes from work; also add sys_WideFromArgv
This was SVN commit r8856.
2011-01-04 19:53:38 +00:00
2fa3c554de Windows build fixes
This was SVN commit r8845.
2010-12-30 20:10:04 +00:00
40933c06e1 Primitive support for gamepad camera movement
This was SVN commit r8844.
2010-12-30 19:45:13 +00:00
802f22485b Fix some warnings on Windows
This was SVN commit r8834.
2010-12-11 12:33:02 +00:00
ba2a9d7af3 improvements from work: [update-workspaces required]
- split precompiled.h into several headers (simplifies reuse)
- enable additional warnings not in W4
- split ErrorReaction into ErrorReactionInternal - clarifies which
values can actually be returned by debug_DisplayError
- wsdl: slightly safer HDC usage via CS_OWNDC, avoid dipping into DC
cache via ValidateRect instead of BeginPaint; remove unused thread
create
- StdDeserializer - wasn't including byte_order => BYTE_ORDER was
undefined
- wsysdep: clean up error dialog message handling

This was SVN commit r8828.
2010-12-09 11:16:21 +00:00
5df240d97d Disable broken GUI error reporter on OS X
This was SVN commit r8787.
2010-12-04 19:09:41 +00:00
f959390d0b Mostly fix hypothetical thread/fork interaction dangers
This was SVN commit r8689.
2010-11-25 16:11:16 +00:00
404f7d4caa Don't put 64-bit OS X code in the 32-bit-only file. Do put it in the 64-bit-only file.
This was SVN commit r8687.
2010-11-24 17:08:00 +00:00
94dca529b1 Fix OS X build errors
This was SVN commit r8684.
2010-11-23 19:20:03 +00:00
80888a7325 Avoid buffer overflow assertion failures when dumping stack trace on Windows.
Try to be marginally less likely to get stuck in infinite recursion.

This was SVN commit r8669.
2010-11-20 21:26:22 +00:00
c36fc2b8d7 Add script-based system for doing messy stuff based on system configuration.
Display warning for certain broken NVIDIA drivers.

This was SVN commit r8663.
2010-11-20 19:46:49 +00:00
74c19b5015 Add xmessage-based GUI dialog box for debug messages on Linux (fixes #663).
Switch out of fullscreen before displaying dialog boxes.
Add Engine.DebugWarn for testing.

This was SVN commit r8661.
2010-11-20 17:14:45 +00:00
404456ee8e Fix int8_t redefinition errors in VC2010
This was SVN commit r8635.
2010-11-17 03:02:04 +00:00
bd3bd084c0 Support new SpiderMonkey API.
wposix: Define int8_t compatibly with SpiderMonkey.
Remove unused camera, lightenv JS interfaces.
Remove most of vector JS interface.
Remove some of the redundant JS string conversion functions.
Remove unneeded vmem, _lodBias functions.
Clean up some formatting.

This was SVN commit r8629.
2010-11-16 23:00:52 +00:00
58b33af168 Support X mouse buttons on Windows
This was SVN commit r8591.
2010-11-13 19:51:15 +00:00
25cd781641 Support horizontal scroll wheels for camera rotation
This was SVN commit r8582.
2010-11-13 01:00:54 +00:00
6e74c53ee9 fix file/dir mode bits
fixes #648
also fix self-test on ICC 12

This was SVN commit r8558.
2010-11-08 15:02:05 +00:00
24f1a00190 avoid setting executable bit in files/dirs we create
thanks to fabio for reporting + a suggested fix.
fixes #648

This was SVN commit r8554.
2010-11-08 10:39:52 +00:00
6b4d5091b3 fixes from work: use ICC bswap intrinsics instead of fallbacks; update UNUSED2 to work with ICC; update mahaf for Win7
This was SVN commit r8553.
2010-11-08 10:01:12 +00:00
383cf7b220 cleanup:
use intrinsics for cpu_AtomicAdd and cpu_CAS, get rid of the
corresponding assembly implementations. (wrapper functions are necessary
at work because mere declarations aren't enough to export the functions
from DLL)
also remove no longer needed fminf

This was SVN commit r8521.
2010-11-02 13:38:56 +00:00
52851faeb6 cleanup - remove old cpu_memcpy and cpu_i64FromDouble that are no longer needed
This was SVN commit r8517.
2010-11-01 11:09:03 +00:00
657ec9aa45 WIP timer thread safety:
CAS functions now implemented directly in external asm files (avoids
wrapper functions)
reinstated cpu_CAS64 (checking ARCH_IA32 at every call site is onerous)
(temporarily disable timer monotonicity check)

This was SVN commit r8515.
2010-11-01 09:54:03 +00:00
2b9774aa05 fix: alt+enter -> resize window -> maximize window failed to generate a resize event
This was SVN commit r8514.
2010-11-01 09:04:55 +00:00
aefc87f226 Windows fixes
This was SVN commit r8513.
2010-10-31 22:26:41 +00:00
034504f536 Remove misleading wposix declaration of unimplemented gettimeofday.
This was SVN commit r8510.
2010-10-31 21:58:30 +00:00
dd5ff36363 Fix Linux build error (fixes #651).
This was SVN commit r8487.
2010-10-29 15:48:46 +00:00
0c3d69ae29 fixes from work: clarify that cpu_MemoryBarrier has no runtime cost by renaming to COMPILER_FENCE and moving to code_annotation.h; fix 32-bit Parallel Studio 2011 warning.
This was SVN commit r8486.
2010-10-29 12:54:51 +00:00
825bbf8f51 parallel studio 2011 warning fixes
This was SVN commit r8484.
2010-10-28 12:22:11 +00:00
e188683bab Preserve cursor-grabbing across alt-tabs on Windows (probably fixes #508).
This was SVN commit r8430.
2010-10-21 21:09:41 +00:00
d11bc41d9a move support for GL swap control into wsdl (based on patch from wacko)
fixes #523

This was SVN commit r8399.
2010-10-17 08:55:47 +00:00
2270961d14 VC2010 fix
This was SVN commit r8353.
2010-10-14 09:39:41 +00:00
48360edf21 noticed during testing that the file cache is much smaller than our dataset; added logic to choose a decent size. rebuild-workspaces required.
wversion: move into separate component from wutil to allow inclusion
from GameSetup without pulling in windows.h (causes conflicts)

This was SVN commit r8319.
2010-10-09 21:14:08 +00:00
6b5b35c245 Remove BFD-based debugging code, to avoid the runtime dependency on binutils.
Fixes #581.

This was SVN commit r8271.
2010-10-04 17:21:55 +00:00
f5f65c23c0 OSX compat: remove cpu_CAS64 wrapper, since intptr_t and i64 apparently aren't compatible types. IA-32 code should call ia32_asm_CAS64 if it wants to CAS 64-bit values.
This was SVN commit r8080.
2010-09-05 15:38:34 +00:00
2e7436434d warning fixes: mostly size_t vs. specialized API type and other type conversion.
added player_id_t typedef and INVALID_PLAYER, use that instead of -1.
also added sanity checks to cpu.cpp to ensure ARCH_* is correct (see
http://www.wildfiregames.com/forum/index.php?showtopic=13327&hl=)
and further predefined macros to arch.h just to be sure.

This was SVN commit r8079.
2010-09-05 09:38:30 +00:00
1c535b6a8a Fix #544 (Fall back to windowed mode if fullscreen fails), based on patch from oln
This was SVN commit r8072.
2010-09-04 14:49:12 +00:00
3abe355b7c Disable implementation of os_cpu_SetThreadAffinityMask on Linux, since it's not necessary and it causes errors.
Should fix #547.

This was SVN commit r8024.
2010-08-22 11:23:50 +00:00
8367b73087 Fix warning
This was SVN commit r7937.
2010-08-13 18:13:14 +00:00
7eebe05485 fixes+improvements from work:
timer: cleanup, remove duplication
topology: fix incorrect param order
tsc: ensure MSRs are available before accessing
msr: add prefix to make clear that registers are nehalem-specific

This was SVN commit r7892.
2010-08-10 17:03:17 +00:00
b89e86772b belatedly add files missing from 3d45069b3f (my bad)
This was SVN commit r7884.
2010-08-09 07:37:43 +00:00
3d45069b3f improvements/additions from work
bits: fix bit_mask for signed types, add SetBitsTo, LeastSignificantBit,
ClearLeastSignificantBit.
add MSR support (read/write via mahaf in kernel mode)
x86_x64: expose family/model
topology: add support for determining core/package from APIC ID.
TSC: report actual frequency for nehalem invariant TSC.
improved UNREACHABLE/ASSUME_UNREACHABLE (avoid ICC warning, add GCC4.5
support)

This was SVN commit r7860.
2010-08-06 13:03:44 +00:00
b4e409e80d Fix #525 more, so it doesn't use an uninitialised variable
This was SVN commit r7853.
2010-08-05 17:13:10 +00:00
c944148337 fix deadlock in pre-XP SP2 windows codepath
fixes #525

This was SVN commit r7852.
2010-08-05 16:20:11 +00:00
51d0abbf2a Use SDL_GL_SWAP_CONTROL to control vsync on non-Windows. Fixes #520.
This was SVN commit r7845.
2010-08-04 21:30:43 +00:00
95047013d0 improvement to os_cpu_SetThreadAffinityMask: avoid Sleep(), fall back to APIC ID if GetCurrentProcessorNumber is unavailable
This was SVN commit r7841.
2010-08-02 07:56:37 +00:00
1706363bab Fix #423 (Switch from CppDoc to Doxygen), based on patch from anr.
Also delete some unused declarations, and rename is_playing to
snd_is_playing.

This was SVN commit r7813.
2010-07-29 15:55:41 +00:00
759e452e0b Fix warning
This was SVN commit r7810.
2010-07-25 18:19:30 +00:00
f6a1501410 Set svn:eol-style native
This was SVN commit r7809.
2010-07-25 18:08:35 +00:00
f79056efbd fix CPU topology problem under VMs reported by Philip (update workspaces required)
also moved lib.h's code generation macros into a separate file to break
a circular dependency with lib.h's use of debug_assert, and added a stub
implementation of sysdep/numa.h

This was SVN commit r7808.
2010-07-25 17:10:57 +00:00
4cd88d8aa9 Remove an assertion which I hope wasn't important
This was SVN commit r7801.
2010-07-24 21:54:54 +00:00
fea6745ec9 fix incorrect screening of APIC IDs (now handle OS X's lack of thread affinity and/or running under a VM without complaint)
This was SVN commit r7797.
2010-07-24 18:48:25 +00:00
523a6a5819 Fix tests to be more tolerant of odd environments
This was SVN commit r7796.
2010-07-24 15:49:40 +00:00
9f6eb626b4 Fix reported build errors
This was SVN commit r7792.
2010-07-23 19:11:02 +00:00
a3f37209a5 Warning fix
This was SVN commit r7787.
2010-07-22 19:01:25 +00:00
8ab70776a5 fix: cpu_CAS64 should use i64 for compatibility with 64-bit CAS
This was SVN commit r7786.
2010-07-22 18:57:36 +00:00
aa44bac652 from work: add thread-safe timer; add CAS64 (required for thread-safe timer); remove topology init requirements, no longer cache results (simplifies GroupPolicy_PerCache); add scoped affinitizer; whrt: fix race condition reported by parallel inspector. also refactor cache and TLB detection.
This was SVN commit r7785.
2010-07-22 16:17:33 +00:00
12568b0229 further fixes from work (where i've finally managed to (temporarily) sign the Aken driver)
in particular, remove two hindrances to displaying the error dialog
during early init.

This was SVN commit r7754.
2010-07-14 12:23:53 +00:00
c634a62f4c from work: cpu_AtomicAdd - return previous value (required for atomic test&set)
numa: move allocator into higher-level VirtualMemory module, since
VirtualAllocExNuma requires Server 2008 and the workaround doesn't
require numa support

This was SVN commit r7753.
2010-07-14 08:52:20 +00:00
17469a93a1 fix: don't complain if redirecting stdout fails (when running as non-admin from "program files")
see http://www.wildfiregames.com/forum/index.php?showtopic=12949&hl=
also remove extern "C" to allow C++ implementation functions

This was SVN commit r7750.
2010-07-14 07:29:35 +00:00
45016e3980 numa: fix: nodeNumber isn't guaranteed to be contiguous; fix race conditions during init; add support for ACPI SRAT; pin NUMA alloc thread to NUMA node; major refactor
also removed two critical sections (no longer needed due to thread-safe
init)

This was SVN commit r7745.
2010-07-13 12:45:27 +00:00
ee72115b7a Fix Linux compile error
This was SVN commit r7743.
2010-07-12 22:14:28 +00:00
9f66c86d64 fix ACPI table validation after encountering signatures containing ! and _ (invalid)
This was SVN commit r7742.
2010-07-12 13:01:12 +00:00