1051 Commits

Author SHA1 Message Date
Branimir Karadžić
0b001f5f36 MSVC: Added ARM64 target. (#412) 2026-07-27 22:08:49 +00:00
Branimir Karadžić
056ea3486c Scanner: Cleanup. (#411) 2026-07-26 08:32:02 -07:00
Branimir Karadžić
9916e720fc Added scanner. (#410) 2026-07-25 12:23:58 -07:00
Sergio R. Z. Masson
cd6720ce9a platform.h: detect MSVC ARM64 as 64-bit and raise 32-bit Windows minimum (#409)
Two related Windows fixes:

* BX_ARCH_64BIT missed MSVC's _M_ARM64 / _M_ARM64EC, so Windows on ARM64 was
  treated as a 32-bit architecture. Add them to the 64-bit detection list.

* The 32-bit Windows branch defaulted WINVER / _WIN32_WINNT to 0x0502 (Windows
  XP / Server 2003), which predates APIs that modern SDK headers reference
  (e.g. the ETW EventRegister/EventWriteTransfer family, only declared for
  _WIN32_WINNT >= 0x0600). Raise it to 0x0601 (Windows 7), matching the 64-bit
  branch. Combined with the ARM64 detection fix, x86, x64 and ARM64 Windows
  targets now all default to a Windows 7 baseline.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 45aaf3cc-900d-442b-a7e5-0fb6d3fe6658
2026-07-23 14:02:25 +00:00
Branimir Karadžić
a7257985fa Added bx::isEqual for bx::StringView. (#407) 2026-07-21 21:37:18 -07:00
Branimir Karadžić
771ce6a8e8 Added homogeneousNdc parameter to buildFrustumPlanes for correct near plane under D3D/VK/Metal clip volume. (#400) 2026-06-08 22:36:59 -07:00
Branimir Karadžić
03b5ae7112 MSVC: Fixed unreachable warning. (#399) 2026-06-07 09:37:58 -07:00
Branimir Karadžić
7dc65d7eca Revert "platform: bridge legacy lowercase emscripten version macros (#397)" (#398)
This reverts commit 4eb6f8ebb2.
2026-05-27 04:42:47 +00:00
ShuangLiu1992
4eb6f8ebb2 platform: bridge legacy lowercase emscripten version macros (#397)
emscripten <= 4.0.23 only defined the lowercase forms (`__EMSCRIPTEN_major__`,
`__EMSCRIPTEN_minor__`, `__EMSCRIPTEN_tiny__`) in `<emscripten/version.h>`.
Starting with 4.0.24 (PR emscripten-core/emscripten#26180), uppercase
became primary and lowercase was kept as deprecated aliases.

bx PR #374 switched all references to the uppercase form, which is the
right forward-looking direction — but it leaves users on emsdk <= 4.0.23
unable to build, because `__EMSCRIPTEN_MAJOR__` is undefined there and
the preprocessor expression `(__EMSCRIPTEN_MAJOR__ * 10000 + …)` evaluates
to 0. That tanks `BX_PLATFORM_EMSCRIPTEN`, which tanks `BX_PLATFORM_POSIX`,
which makes `bx/src/os.cpp` skip its `<time.h>` / `<sched.h>` includes,
which causes the build to fail on `unknown type name 'timespec'`.

Add a small bridge: if the uppercase macros aren't defined but the lowercase
ones are, alias the uppercase forms to lowercase. The rest of bx continues
to use uppercase uniformly. Newer emsdk versions are unaffected (the bridge
block is skipped because uppercase is already defined).

Co-authored-by: Shuang Liu <[email protected]>
2026-05-22 16:36:01 -07:00
Branimir Karadžić
f9dcd60e79 Fixed tests. (#393) 2026-05-06 23:07:55 -07:00
Branimir Karadžić
6bb55b32eb Added float4x4_inverse test. (#391)
* Added float4x4_inverse test.

* Bump tolerance.

* Fixed broadcast bug in simd128_f32_dot_ni.
2026-05-07 05:15:03 +00:00
Бранимир Караџић
6ed98f29cc Fix simd _ni signbitsmask/test_any/test_all. 2026-05-03 17:02:23 -07:00
Branimir Karadžić
7ddf87f9a0 Android: Fixed build. (#388) 2026-05-03 14:36:09 -07:00
Branimir Karadžić
6ce72eac63 Fixed build. (#387) 2026-05-03 12:56:46 -07:00
Branimir Karadžić
22f7b051b9 Rework SIMD lib. (#386) 2026-05-03 18:25:39 +00:00
Branimir Karadžić
0f575d5880 math: Use MSVC _BitScan intrinsics in countLeadingZeros/countTrailingZeros runtime fast path. (#385) 2026-04-25 06:18:15 +00:00
Branimir Karadžić
8d98acc6f7 Added more functionality to memoryMap/Unmap. (#384) 2026-04-24 04:05:11 +00:00
Branimir Karadžić
d54d89d6b5 Added BX_REQUIRE_CONSTANT clang macro. (#381) 2026-04-07 04:10:04 +00:00
Branimir Karadžić
b259cfbd3f Implemented all bounds tests. (#380) 2026-04-05 04:51:34 +00:00
Daniel Kalmar
0d38df8615 Update to using uppercase emscripten macros. (#374)
The lowercase versions are considered deprecated in emscripten.
See https://github.com/emscripten-core/emscripten/pull/26180
2026-03-10 16:13:42 +00:00
Branimir Karadžić
fa641d8581 Fixed build. (#371) 2026-02-28 07:43:08 +00:00
Branimir Karadžić
a6168a9d1c Added bx::toHuman. (#370) 2026-02-27 15:37:36 +00:00
Branimir Karadžić
36ad6131f4 Added: bx::formatHumanNumber. (#368) 2026-02-01 02:45:04 +00:00
Branimir Karadžić
3ed36d14b0 Added load/store aligned/unaligned. (#366) 2026-01-27 02:00:52 +00:00
Branimir Karadžić
ef9c17cf3d Added Murmur3_64. (#364) 2026-01-23 05:24:41 +00:00
Branimir Karadžić
d8d7d13c85 Happy New Year! (#363) 2026-01-14 15:30:08 +00:00
Branimir Karadžić
01cf049f97 0 terminate fixed empty string. (#361) 2025-12-26 18:24:16 +00:00
Branimir Karadžić
acc565e47e Added bx::Ticks. (#359) 2025-12-24 03:27:32 +00:00
Branimir Karadžić
ce31b14454 Fix Thread::setThreadName. (#358) 2025-12-17 02:36:31 +00:00
Branimir Karadžić
a69b0a72f7 Improve bx::saturateCast. (#357) 2025-12-14 06:06:56 +00:00
Branimir Karadžić
a9f99c627e bx::saturateCast requries values to be integer or float. (#356) 2025-12-14 04:02:08 +00:00
Branimir Karadžić
f4a30a69a1 Fixed build. (#355) 2025-12-13 19:59:10 +00:00
Branimir Karadžić
4ac903bdcf Added saturateCast. (#354) 2025-12-13 19:05:24 +00:00
Branimir Karadžić
808aa150f8 StringView constexpr. (#351) 2025-11-23 02:41:54 +00:00
Branimir Karadžić
54941d2a3c Cleanup. (#349) 2025-11-20 03:49:32 +00:00
Branimir Karadžić
4aaf864875 Added RingBufferControl get empty, used, reserved counts. (#348) 2025-11-20 01:25:39 +00:00
Бранимир Караџић
75dcd5673a Fixed build. 2025-10-21 18:20:26 -07:00
Branimir Karadžić
af959f53f9 Cleanup. 2025-10-21 18:03:23 -07:00
Бранимир Караџић
c8128850f8 Implement getCallStackFast/Exact for fast call-stack backtrace. 2025-10-14 23:05:08 -07:00
Бранимир Караџић
59d9249854 Cleanup. 2025-09-24 20:06:27 -07:00
Branimir Karadžić
2fe4b15234 Added FixedStringT. 2025-09-19 20:36:42 -07:00
Бранимир Караџић
eda38395dd Made exception handler optional. 2025-08-23 19:29:13 -07:00
Branimir Karadžić
d2b8b1aab5 Added Linux/signal exception handling. 2025-08-23 09:20:41 -07:00
Бранимир Караџић
d858859d17 Set minimum supported version of GLIBC to 2.31.0 (February 1, 2020). 2025-06-07 09:18:23 -07:00
Бранимир Караџић
5a20afef84 Bumped minimum required version of MSVC. 2025-05-26 12:21:45 -07:00
Бранимир Караџић
d4096a8446 Added uint32/64_splat. 2025-04-26 19:56:17 -07:00
Бранимир Караџић
13c40f9a6e Happy New Year! 2025-01-13 15:45:25 -08:00
Бранимир Караџић
c723ec4054 Added memory map/unmap functions. 2024-12-31 08:24:43 -08:00
Бранимир Караџић
1b0b2cc86a Added [[msvc::intrisic]]. 2024-12-30 20:13:59 -08:00
Branimir Karadžić
df86c611d7 Cleanup. 2024-12-28 17:29:20 -08:00