phoenix-firestorm/indra/llcommon
Henri Beauchamp 1eb2b23f4b
SL-19159 Faster LLUUID and LLMaterialID hashing for std and boost containers keys (#70)
LLUUID and LLMaterialID already have an excellent entropy and value dispersion; there is therefore strictly no need to further (slowly) hash their value for use with std and boost libraries containers.

This commit adds a trivial getDigest64() method to both LLUUID and LLMaterialID (which simply returns the XOR of the two 64 bits long words their value is made of), and uses it in std::hash and hash_value() specializations for use with containers.
2023-02-07 14:51:53 +02:00
..
tests DRTVWR-575: A few more tweaks addressing size_t wider than 32 bits. 2022-11-03 15:18:32 -04:00
CMakeLists.txt SL-19110 Fast hashing classes for use in place of the slow LLMD5, where speed matters. (#64) 2023-01-31 18:42:51 +02:00
StackWalker.cpp DRTVWR-476: Fix Windows line endings 2020-03-25 18:47:13 -04:00
StackWalker.h DRTVWR-476: Eliminate unnecessary typedefs from struct, enum decls. 2020-03-25 16:12:46 -04:00
chrono.h SL-16024: Add ThreadSafeSchedule, a timestamped LLThreadSafeQueue. 2021-10-05 17:31:53 -04:00
classic_callback.cpp DRTVWR-543: Add ClassicCallback utility class with tests 2021-09-23 16:25:12 -04:00
classic_callback.h DRTVWR-543: Consistently use ClassicCallback<USERDATA> throughout. 2021-09-23 17:09:16 -04:00
ctype_workaround.h
fix_macros.h
hbxxh.cpp SL-19110 Fix coding policy 2023-01-31 19:35:10 +02:00
hbxxh.h SL-19110 Make HBXXH* classes no-copy. (#72) 2023-02-07 01:17:22 +02:00
indra_constants.cpp Merge 6.3.1 viewer-release 2019-08-26 12:35:18 -07:00
indra_constants.h Reverted SL-6109 keybinding changes 2020-06-23 16:55:06 +03:00
is_approx_equal_fraction.h
linden_common.h SL-16027: Add Tracy OpenGL support 2021-09-21 16:10:52 -07:00
llalignedarray.h SL-16799 Clean up use of hardcoded folder names 2022-02-05 02:59:10 +02:00
llallocator.cpp
llallocator.h
llallocator_heap_profile.cpp MacOS Build fix 2023-01-16 20:43:12 +02:00
llallocator_heap_profile.h
llapp.cpp DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
llapp.h Restored SL-14961 2022-02-14 22:59:26 +02:00
llapr.cpp SL-17868 Crash at ThreadRecorder::bringUpToDate 2022-07-30 02:57:30 +03:00
llapr.h SL-17868 Fixed macos build issue 2022-08-01 18:27:13 +03:00
llassettype.cpp Eliminate needless copies 2023-01-09 19:19:12 -04:00
llassettype.h
llatomic.cpp
llatomic.h
llbase32.cpp
llbase32.h
llbase64.cpp DRTVWR-575: Address review comments on Xcode 14.1 type tweaks. 2022-11-12 18:59:21 -10:00
llbase64.h
llbitpack.cpp
llbitpack.h
llboost.h
llcallbacklist.cpp Eliminate needless copies 2023-01-09 19:19:12 -04:00
llcallbacklist.h
llcallstack.cpp Eliminate needless copies 2023-01-09 19:19:12 -04:00
llcallstack.h
llcleanup.cpp SL-13034 Last string in logs should say 'Goodbye' 2020-09-25 17:02:22 +03:00
llcleanup.h SL-13034 Last string in logs should say 'Goodbye' 2020-09-25 17:02:22 +03:00
llclickaction.h
llcommon.cpp SL-16606: Add profiler category MEMORY 2022-01-14 11:50:20 -08:00
llcommon.h
llcommonutils.cpp
llcommonutils.h
llcond.h SL-16094: Fix WorkQueue test for correct behavior of runFor(). 2021-11-24 12:56:48 -05:00
llcoros.cpp Merge branch 'master' into DRTVWR-544-maint 2022-04-18 20:43:49 +03:00
llcoros.h Restored SL-14961 2022-02-14 22:59:26 +02:00
llcrc.cpp
llcrc.h
llcriticaldamp.cpp
llcriticaldamp.h
lldate.cpp SL-16148 SL-16244 SL-16270 SL-16253 Remove most BlockTimers, remove LLMemTracked, introduce alignas, hook most/all reamining allocs, disable synchronous occlusion, and convert frequently accessed LLSingletons to LLSimpleton 2021-10-28 18:06:21 +00:00
lldate.h
lldeadmantimer.cpp
lldeadmantimer.h
lldefs.h DRTVWR-575: Try to avoid comparison warnings in llclamp() 2022-12-06 17:16:56 -05:00
lldependencies.cpp DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
lldependencies.h SL-18893 OSX buildfix 2023-01-16 23:16:43 +02:00
lldepthstack.h
lldictionary.cpp
lldictionary.h
lldoubledispatch.h
llendianswizzle.h
llerror.cpp Eliminate needless copies 2023-01-09 19:19:12 -04:00
llerror.h SL-16093 Don't force the console window to be open on developer builds because it causes frame stalls while logging. 2021-09-27 23:56:06 +00:00
llerrorcontrol.h SL-16093 Don't force the console window to be open on developer builds because it causes frame stalls while logging. 2021-09-27 23:56:06 +00:00
llerrorlegacy.h
llerrorthread.cpp
llerrorthread.h
llevent.cpp Cleanup for loops in llcommon to use C++11 range based for loops 2023-01-07 00:38:12 -04:00
llevent.h
lleventapi.cpp
lleventapi.h
lleventcoro.cpp SL-15393: Use non-overloaded name for function returning LLSD&. 2021-06-24 02:07:40 +03:00
lleventcoro.h SL-793: Use Boost.Fiber instead of the "dcoroutine" library. 2020-03-25 17:32:45 -04:00
lleventdispatcher.cpp DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
lleventdispatcher.h
lleventemitter.h
lleventfilter.cpp DRTVWR-476: Defer #include "lleventtimer.h" until lleventfilter.cpp. 2020-03-25 19:00:10 -04:00
lleventfilter.h SL-16014: Add Tracy markup for LLEventFilter 2021-09-22 14:38:44 -07:00
llevents.cpp SL-15093 Crash nanov2_free_to_block 2021-05-28 19:54:16 +03:00
llevents.h SL-15093 Crash nanov2_free_to_block #2 2021-05-31 19:36:36 +03:00
lleventtimer.cpp DRTVWR-494: Streamline LLEventTimer::updateClass(). 2020-03-25 15:28:17 -04:00
lleventtimer.h DRTVWR-476: Add LLEventTimer::run_every(), run_at(), run_after(). 2020-03-25 18:59:10 -04:00
llexception.cpp SL-17077 Ensure profiling is disabled if gpu_benchmark fails. Log the source of the real crash for when the viewer inevitably crashes later. 2022-03-25 13:05:50 -05:00
llexception.h SL-14347 Crash at ChoosePixelFormat SEH 2020-12-01 18:22:24 +02:00
llfasttimer.cpp SL-16606: Add profiler category STATS 2022-01-14 11:50:21 -08:00
llfasttimer.h SL-15709: Cleanup 2021-09-03 17:53:44 -07:00
llfile.cpp
llfile.h DRTVWR-476: Add LLUniqueFile, adding RAII semantics to LLFILE*. 2020-03-25 19:05:17 -04:00
llfindlocale.cpp
llfindlocale.h
llfixedbuffer.cpp
llfixedbuffer.h
llformat.cpp
llformat.h
llframetimer.cpp SL-15709: Windows: Include Tracy source directly; don't use a library 2021-09-15 13:52:59 -06:00
llframetimer.h
llhandle.h
llhash.h
llheartbeat.cpp
llheartbeat.h
llheteromap.cpp Eliminate needless copies 2023-01-09 19:19:12 -04:00
llheteromap.h
llindexedvector.h
llinitdestroyclass.cpp Cleanup for loops in llcommon to use C++11 range based for loops 2023-01-07 00:38:12 -04:00
llinitdestroyclass.h
llinitparam.cpp SL-18893 OSX buildfix 2023-01-16 23:16:43 +02:00
llinitparam.h Eliminate needless copies 2023-01-09 19:19:12 -04:00
llinstancetracker.cpp DRTVWR-494: Move LL_ERRS out of llinstancetracker.h header file. 2020-03-25 15:28:17 -04:00
llinstancetracker.h DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
llkeybind.cpp Cleanup for loops in llcommon to use C++11 range based for loops 2023-01-07 00:38:12 -04:00
llkeybind.h DRTVWR-575: Introduce LLKeyBind::endNonEmpty() 2022-12-06 13:04:35 -05:00
llkeythrottle.h
llkeyusetracker.h
llleap.cpp DRTVWR-575: Address review comments on Xcode 14.1 type tweaks. 2022-11-12 18:59:21 -10:00
llleap.h
llleaplistener.cpp SL-16024: Return shared_ptr from LLInstanceTracker::getInstance(). 2021-10-07 11:53:45 -04:00
llleaplistener.h DRTVWR-476: Eliminate static LLEventPump factory maps. 2020-03-25 18:58:16 -04:00
llliveappconfig.cpp
llliveappconfig.h
lllivefile.cpp Mods to make merge with viewer-release have less whitespace-only change and fix diffs between EEP and VR. 2019-03-13 13:21:48 -07:00
lllivefile.h
llmainthreadtask.cpp DRTVWR-494: Add LLMainThreadTask to perform work on the main thread. 2020-03-25 15:28:17 -04:00
llmainthreadtask.h DRTVWR-494: Remove LLMainThreadTask::dispatch(LockStatic&, ...) 2020-03-25 15:28:17 -04:00
llmake.h DRTVWR-476: Engage variadic llmake() implementation. 2020-03-25 18:52:10 -04:00
llmd5.cpp DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
llmd5.h DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
llmemory.cpp Merged in SL-15937 (pull request #991) 2022-05-27 20:29:56 +00:00
llmemory.h SL-16606: Add profiler category MEMORY 2022-01-14 11:50:20 -08:00
llmemorystream.cpp
llmemorystream.h
llmetricperformancetester.cpp Eliminate needless copies 2023-01-09 19:19:12 -04:00
llmetricperformancetester.h DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
llmetrics.cpp
llmetrics.h
llmortician.cpp DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
llmortician.h DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
llmutex.cpp SL-16606: Add profiler category THREAD 2022-01-14 11:50:21 -08:00
llmutex.h DRTVWR-494: Use std:🧵:id for LLThread::currentID(). 2020-03-25 15:28:17 -04:00
llnametable.h Eliminate needless copies 2023-01-09 19:19:12 -04:00
llpointer.h
llpounceable.h
llpredicate.cpp
llpredicate.h
llpreprocessor.h SL-16207: Update llstring.h handling of different string types. 2021-10-27 13:01:37 -04:00
llpriqueuemap.h Cleanup for loops in llcommon to use C++11 range based for loops 2023-01-07 00:38:12 -04:00
llprocess.cpp DRTVWR-476: Fix confusing comment in LLProcess::handle_status(). 2020-03-25 18:44:04 -04:00
llprocess.h
llprocessor.cpp Merge branch 'master' into DRTVWR-544-maint 2022-05-31 01:58:09 +03:00
llprocessor.h Merge branch 'master' into DRTVWR-544-maint 2022-05-31 01:58:09 +03:00
llprocinfo.cpp
llprocinfo.h
llprofiler.h SL-16606: Include profiler categories automatically 2022-01-14 11:50:18 -08:00
llprofilercategories.h SL-16606: Add categories 2022-01-14 11:50:18 -08:00
llptrto.cpp
llptrto.h
llqueuedthread.cpp DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
llqueuedthread.h DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
llrand.cpp
llrand.h
llrefcount.cpp SL-18119 - UIUsage logs for some common operations 2022-09-16 17:09:55 +01:00
llrefcount.h SL-16815 and SL-16906 Avoid redundant bumpmap generation, add some assertions around ref counting and (hack) fix crash on shutdown from dangling texture reference (reduced to 1 dangling texture from several hundred, can't find the remaining reference). 2022-02-23 16:51:33 -06:00
llregex.h SL-2202 Add exception handling around boost::regex_match() calls in the viewer 2021-01-11 17:07:03 +02:00
llregistry.h Cleanup for loops in llcommon to use C++11 range based for loops 2023-01-07 00:38:12 -04:00
llrun.cpp DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
llrun.h DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
llsafehandle.h
llsd.cpp DRTVWR-575: Address review comments on Xcode 14.1 type tweaks. 2022-11-12 18:59:21 -10:00
llsd.h DRTVWR-575: Address review comments on Xcode 14.1 type tweaks. 2022-11-12 18:59:21 -10:00
llsdjson.cpp
llsdjson.h
llsdparam.cpp Eliminate needless copies 2023-01-09 19:19:12 -04:00
llsdparam.h SL-16148 SL-16244 SL-16270 SL-16253 Remove most BlockTimers, remove LLMemTracked, introduce alignas, hook most/all reamining allocs, disable synchronous occlusion, and convert frequently accessed LLSingletons to LLSimpleton 2021-10-28 18:06:21 +00:00
llsdserialize.cpp DRTVWR-575: Update a few more int lengths in llsdserialize.{h,cpp}. 2022-12-06 14:40:11 -05:00
llsdserialize.h DRTVWR-575: Update a few more int lengths in llsdserialize.{h,cpp}. 2022-12-06 14:40:11 -05:00
llsdserialize_xml.cpp DRTVWR-575: Update a few more int lengths in llsdserialize.{h,cpp}. 2022-12-06 14:40:11 -05:00
llsdserialize_xml.h
llsdutil.cpp Cleanup for loops in llcommon to use C++11 range based for loops 2023-01-07 00:38:12 -04:00
llsdutil.h SL-15393: Use non-overloaded name for function returning LLSD&. 2021-06-24 02:07:40 +03:00
llsimplehash.h
llsingleton.cpp SL-10297: Simplify implementation of LLSingletonBase::logwarns() etc. 2021-05-12 09:46:49 -04:00
llsingleton.h SL-16606: Add profiler category THREAD 2022-01-14 11:50:21 -08:00
llsmoothstep.h
llstacktrace.cpp DRTVWR-476: Fix Windows line endings 2020-03-25 18:47:13 -04:00
llstacktrace.h
llstatenums.h
llstaticstringtable.h
llstatsaccumulator.h
llstl.h Revert "Merge branch 'c++17' into DRTVWR-522-maint" 2021-09-28 19:22:18 +03:00
llstreamqueue.cpp
llstreamqueue.h
llstreamtools.cpp DRTVWR-575: Defend unescape_string() against empty line. 2022-12-06 15:46:05 -05:00
llstreamtools.h
llstrider.h
llstring.cpp DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
llstring.h MacOS Build fix 2023-01-16 20:43:12 +02:00
llstringtable.cpp Cleanup for loops in llcommon to use C++11 range based for loops 2023-01-07 00:38:12 -04:00
llstringtable.h Cleanup for loops in llcommon to use C++11 range based for loops 2023-01-07 00:38:12 -04:00
llsys.cpp DRTVWR-575: Merge brad's xcode-14.1 fixes with nat's 2022-11-13 05:59:40 -10:00
llsys.h DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
llsys_objc.h DRTVWR-575: Explain that NSInteger is really int64_t. 2022-11-13 06:10:02 -10:00
llsys_objc.mm DRTVWR-575: Merge brad's xcode-14.1 fixes with nat's 2022-11-13 05:59:40 -10:00
lltempredirect.cpp DRTVWR-476: Always clear both fields even if mOrigTarget invalid. 2020-03-25 19:06:13 -04:00
lltempredirect.h DRTVWR-476: Encapsulate dup()/dup2() fd saving as LLTempRedirect. 2020-03-25 19:06:12 -04:00
llthread.cpp SL-16606: Add profiler category THREAD 2022-01-14 11:50:21 -08:00
llthread.h SL-15200: Add LLApp::sleep(duration) methods. 2021-05-17 13:37:13 -04:00
llthreadlocalstorage.h SL-17868 Crash at ThreadRecorder::bringUpToDate 2022-07-30 02:57:30 +03:00
llthreadsafequeue.cpp
llthreadsafequeue.h DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
lltimer.cpp DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
lltimer.h DRTVWR-510 remove all LL_SOLARIS conditionals 2020-10-08 17:16:22 -06:00
lltrace.cpp DRTVWR-565: Merge branch 'origin/contribute' into DRTVWR-565 2022-12-12 13:27:57 -05:00
lltrace.h DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
lltraceaccumulators.cpp DRTVWR-565: Merge branch 'origin/contribute' into DRTVWR-565 2022-12-12 13:27:57 -05:00
lltraceaccumulators.h SL-16606: Add profiler category STATS 2022-01-14 11:50:21 -08:00
lltracerecording.cpp Cleanup for loops in llcommon to use C++11 range based for loops 2023-01-07 00:38:12 -04:00
lltracerecording.h DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
lltracethreadrecorder.cpp Cleanup for loops in llcommon to use C++11 range based for loops 2023-01-07 00:38:12 -04:00
lltracethreadrecorder.h DRTVWR-565: Merge branch 'origin/contribute' into DRTVWR-565 2022-12-12 13:27:57 -05:00
lltreeiterators.h
llunits.h
llunittype.h DRTVWR-575: Address review comments on Xcode 14.1 type tweaks. 2022-11-12 18:59:21 -10:00
lluri.cpp Cleanup for loops in llcommon to use C++11 range based for loops 2023-01-07 00:38:12 -04:00
lluri.h SL-10924 Fix data escaping to accomodate CEF update 2019-04-11 20:29:50 +03:00
lluriparser.cpp SL-14597 Fixed deprecated function and added signal handling 2021-01-21 11:59:27 +00:00
lluriparser.h SL-14597 Fixed deprecated function and added signal handling 2021-01-21 11:59:27 +00:00
lluuid.cpp SL-19159 Faster LLUUID and LLMaterialID hashing for std and boost containers keys (#70) 2023-02-07 14:51:53 +02:00
lluuid.h SL-19159 Faster LLUUID and LLMaterialID hashing for std and boost containers keys (#70) 2023-02-07 14:51:53 +02:00
llwin32headers.h
llwin32headerslean.h
llworkerthread.cpp Cleanup for loops in llcommon to use C++11 range based for loops 2023-01-07 00:38:12 -04:00
llworkerthread.h DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
lockstatic.h DRTVWR-494: Move explanatory comments from LLSingleton to LockStatic. 2020-03-25 15:28:17 -04:00
mutex.h DRTVWR-494: Encapsulate redundant VS boilerplate around <mutex>. 2020-03-25 15:28:17 -04:00
stdtypes.h DRTVWR-575: Address review comments on Xcode 14.1 type tweaks. 2022-11-12 18:59:21 -10:00
string_table.h
stringize.h SL-16094: Tweak llstring merge 2021-11-23 10:11:16 -05:00
threadpool.cpp SL-17483: Make ThreadPool inherit LLInstanceTracker 2022-06-14 11:31:52 -07:00
threadpool.h SL-17483: Make ThreadPool inherit LLInstanceTracker 2022-06-14 11:31:52 -07:00
threadsafeschedule.h DRTVWR-575: Fix llcommon assumptions that size_t fits in 4 bytes. 2022-11-03 14:58:32 -04:00
timer.h
tuple.h SL-16024: Introduce tuple.h with tuple_cons(), tuple_cdr(). 2021-10-04 11:48:58 -04:00
u64.cpp
u64.h
workqueue.cpp SL-16606: Add profiler category THREAD 2022-01-14 11:50:21 -08:00
workqueue.h SL-16182: Offload audio decoding from the main thread to the general work queue. 2022-06-14 11:31:52 -07:00