Commit Graph

3966 Commits (a455d3ee7d5ddefcdf008fa86ecc7c80aba758aa)

Author SHA1 Message Date
Rye a455d3ee7d Introduce build system and preprocessor support for ARM64 2025-02-11 05:04:08 -05:00
Rye e83aea5e95 Introduce SSE2NEON package for handling sse to neon intrinsic compatibility 2025-02-11 05:04:07 -05:00
Rye 6fcd349f37 Fix Tracy memory profiling overloads for aligned allocations
Fix disabling renderdoc support
Improve ll_aligned_alloc functions on darwin for 32 and 64byte aligned by utilizing posix_memalign
2025-02-11 05:04:05 -05:00
Rye 635c34a17b Fix build with C++20 including nat's changes to fsyspath 2025-02-11 05:04:04 -05:00
Andrey Kleshchev fd577e3bfc #3400 Reimplement LLError marker for crash statistics 2025-01-30 01:35:49 +02:00
Andrey Kleshchev ad375d6116 viewer#3088 Report out of memory as a separate 'category' 2025-01-22 16:06:30 +02:00
Dave Parks eff46262c8
#2590 Radeon mac optimization pass (#3277)
- Skip updating of reflection probes that are not the default probe when probe coverage is set to "None"
- enable RenderAppleUseMultGL and disable occlusion culling on Macs with AMD GPUs
- Reduce the number of texture decode threads on Macs with intel cpus.
- Move texture deletion to LLImageGL::updateClass and prevent textures from staying resident in vram longer than 3 frames
- Disable SSAO by default on Macs with intel CPUs
2024-12-12 15:46:01 -06:00
Nat Goodspeed a13ae880af Add diagnostic output for LLProcess event history failure. 2024-11-27 13:41:52 -08:00
Brad Linden 13c0708cc7
Attempt at fix for secondlife/viewer#2745 mac crash when app is in background (#3063)
once again disable RenderAppleUseMultGL and RenderGLMultiThreadedMedia
also added a tiny fix for missing processor vendor in crash reports
2024-11-08 14:16:23 -08:00
Andrey Kleshchev 55732f7343 viewer#3010 Fix malfunctioning json array to llsd parsing
Was reserving 'size' elements, then appending more elements on top.
2024-11-06 00:51:20 +02:00
nat-goodspeed a7d5d4cf84
Merge pull request #2610 from secondlife/frame-profile-json
Make Develop->Render Tests->Frame Profile dump JSON to a file too.
2024-09-19 14:48:14 -04:00
Andrey Kleshchev 25969b330e viewer#2608 Crash at LLSnapshotLivePreview::getFormattedImage 2024-09-19 20:56:10 +03:00
Nat Goodspeed be40936881 trailing spaces from other branches 2024-09-19 12:40:56 -04:00
Nat Goodspeed 8342d68ea9 Merge branch 'develop' into frame-profile-json 2024-09-19 11:48:33 -04:00
Brad Linden c5a2235e7a
Turn off sLogInSignal to avoid crashing. (#2607)
fixes secondlife/viewer#2566
2024-09-18 18:16:24 -07:00
Nat Goodspeed f0300cf8b3 Add hexdump.h with iostream manipulators to dump a byte range as hex
or to produce readable text from a mix of printing and nonprinting ASCII
characters.

(cherry picked from commit 01a59bab1a4b7c4645271a21cfaadc3735b6029c)
2024-09-18 17:17:59 -04:00
Nat Goodspeed 725e1b7d6f Ditch trailing space. 2024-09-18 16:56:10 -04:00
Nat Goodspeed 837a6e04d8 Give our fsyspath an operator std::string() conversion method.
This is redundant (but harmless) on a Posix system, but it fills a missing
puzzle piece on Windows. The point of fsyspath is to be able to interchange
freely between fsyspath and std::string. Existing fsyspath could be
constructed and assigned from std::string, and we could explicitly call its
string() method to get a std::string, but an implicit fsyspath-to-string
conversion that worked on Posix would trip us up on Windows. Fix that.

(cherry picked from commit fbeff6d8052d4b614a0a2c8ebaf35b45379ab578)
2024-09-18 16:52:45 -04:00
Nat Goodspeed e829828dcd Introduce fsyspath subclass of std::filesystem::path.
Our std::strings are UTF-8 encoded, so conversion from std::string to
std::filesystem::path must use UTF-8 decoding. The native Windows
std::filesystem::path constructor and assignment operator accepting
std::string use "native narrow encoding," which mangles path strings
containing UTF-8 encoded non-ASCII characters.

fsyspath's std::string constructor and assignment operator explicitly engage
std::filesystem::u8path() to handle encoding. u8path() is deprecated in C++20,
but once we adapt fsyspath's conversion to C++20 conventions, consuming code
need not be modified.

(cherry picked from commit e399b02e3306a249cb161f07cac578d3f2617bab)
2024-09-18 16:52:08 -04:00
Nat Goodspeed e6d0138a6a Add LLFloaterAbout info (esp. GPU info) to Frame Profile stats dump
With the About info added, `getProfileStatsContext()` need not redundantly add
`"channel"`, `"version"` or `"region"`.

Slightly improve the efficiency of `LlsdToJson()` and `LlsdFromJson()` by
preallocating the known size of the source array or map. (Unfortunately the C++
`LLSD` class offers us no way to preallocate a map.)

In `LLAppViewer::getViewerInfo()`, avoid immediate successive calls to
`gAgent.getRegion()`.

(cherry picked from commit f4b65638879c10c832b3bb8448f82001106ffd11)
2024-09-18 14:09:34 -04:00
Ansariel Hiller 74205607b7
Clean up Windows build (#2562)
* APR_DECLARE_STATIC and APU_DECLARE_STATIC gets already defined in APR.cmake
* Move both _CRT_SECURE_NO_WARNINGS and _WINSOCK_DEPRECATED_NO_WARNINGS definitions to 00-Common.cmake
* Always define WIN32_LEAN_AND_MEAN and include subset of Windows API by default
* Remove llwin32headerslean.h and remove unnecessary WIN32_LEAN_AND_MEAN definition handling in llwin32headers.h
* Clean up includes of Windows API headers
* Get rid of workaround to link against IPHLPAPI.lib in lluuid.cpp - this seems to have been an issue in the past that has been fixed
2024-09-13 17:28:48 +03:00
Brad Linden a3f6f98f1b
Merge pull request #2561 from secondlife/brad/2553-about-sl-crash-locale-init
secondlife/viewer#2553 about sl crash locale init
2024-09-12 15:27:26 -07:00
Brad Linden f4c53518d7 Attempted fix for mac crash when showing About Second Life.
secondlife/viewer#2553
2024-09-12 15:04:03 -07:00
Brad Linden bb9a2dd75b Fix for mac build with tracy enabled. 2024-09-12 15:03:44 -07:00
Dave Parks 61990bfd69 Fix for tracy not working on mac 2024-09-12 11:06:05 -05:00
RunitaiLinden cde5d29faf Profile guided optimizations 2024-09-10 18:27:45 -05:00
Ansariel Hiller d91d39fa0f
Changes towards C++20 compatibility (#2520) 2024-09-09 13:02:34 +03:00
TJ bacf9cfeab
Fixed md5 buffer not being correctly zero-initialized and refactored code. (#2507) 2024-09-05 16:55:02 +03:00
Brad Linden f15228023f
Attempt to get better file/line info for LL_ERRS crahses in bugsplat. (#2447)
secondlife/viewer#2445
2024-08-28 16:20:25 -07:00
Brad Linden 367c8f2363
Improve safety of macOS available RAM calcuations at suggestion of Ansariel and Beq (#2423) 2024-08-26 17:24:07 -07:00
Cosmic Linden 316f0f0b8c secondlife/viewer#2391: Remove avatar rigging "callstack" logging 2024-08-26 16:33:38 -07:00
Rye Mutt ef916bd3ae Remove or suppress left over debug messages in hot paths (#2392) 2024-08-26 16:32:22 -07:00
Brad Linden 68f712615f Merge remote-tracking branch 'origin/release/2024.06-atlasaurus' into develop
# Conflicts:
 #	autobuild.xml
 #	indra/newview/llvoicewebrtc.cpp
2024-08-20 09:44:14 -07:00
Ansariel Hiller 9f7dd01772
Clean up boost includes and remove compiler warning pragma for unreachable code in PCH (#2361) 2024-08-20 18:41:48 +03:00
Ansariel Hiller 862a4671f2
Remove orphaned LLAllocator (#2348) 2024-08-20 00:47:42 +03:00
Ansariel Hiller d6190bbf13
Refactor LLFileSystem for and fix an old issue in LLFile (#2332) 2024-08-19 09:39:35 +03:00
Brad Linden 2a81ebba53 Merge remote-tracking branch 'origin/release/webrtc-voice' into release/2024.06-atlasaurus 2024-08-15 13:15:22 -07:00
Alexander Gavriliuk 10ef293bc9 BugSplat Crash #1504587: std::vector::empty() 2024-08-15 19:40:23 +02:00
Rye Mutt b5e306f7d8
Enable /permissive- on MSVC for better standards conformance (#2251)
* Enable /permissive- on MSVC for better C++ conformance and fix related errors

* Clean up left over warning suppressions from old library or msvc versions
2024-08-14 08:01:02 -07:00
Rye Mutt 70f455347e Introduce tracy instrumentation of mutex in LLSingleton, LLInstanceTracker and logging 2024-08-13 17:28:19 -04:00
Rye Mutt 183b097072 Update tracy integration to 0.11 and rework client library to be configurable at build time
Also copy tracy profiler client next to windows binary when enabled
2024-08-13 17:27:30 -04:00
Brad Linden c106221726 Merge remote-tracking branch 'origin/release/2024.06-atlasaurus' into develop
# Conflicts:
 #	.github/workflows/build.yaml
 #	indra/llui/llscrolllistctrl.cpp
2024-08-09 15:43:06 -07:00
Brad Linden 3b2c32fdf9 Merge remote-tracking branch 'origin/release/webrtc-voice' into release/2024.06-atlasaurus
# Conflicts:
 #	.github/workflows/build.yaml
 #	indra/newview/CMakeLists.txt
 #	indra/newview/llspeakers.cpp
 #	indra/newview/llvoicechannel.cpp
 #	indra/newview/llvoicechannel.h
 #	indra/newview/llvoiceclient.cpp
 #	indra/newview/llvoiceclient.h
 #	indra/newview/llvoicewebrtc.cpp
2024-08-09 15:10:13 -07:00
Andrey Kleshchev ae7f7cd670 Replace boost::shared_ptr with std in voice classes 2024-08-07 14:19:49 +03:00
Rye Mutt 86668633c3 Fix failure to join or detach threads causing rare shutdown termination 2024-08-01 17:54:25 +03:00
Rye Mutt 3e322df4fb Replace liburiparser with boost::url 2024-07-29 13:33:12 +03:00
Brad Linden ba7e982e68
Merge pull request #1996 from secondlife/davep/fix_tracy_build
Fix for tracy build.
2024-07-19 17:00:01 -07:00
Alexander Gavriliuk f0d7ccdbe0 #2053 BugSplat Crash #1494325: LLVOVolume::getReflectionProbeNearClip() 2024-07-19 13:07:26 +02:00
Alexander Gavriliuk ef9a494134 #1500 Better out of disk space handling 2024-07-18 09:42:59 +02:00
RunitaiLinden 7679c76144 Fix for tracy build. 2024-07-11 12:24:19 -05:00