You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
* AZStd::basic_string improvements The AZStd::basic_string class has a better implementation of the Short String Optimization, which increases the amount of characters that can be stored in a `basic_string<char>` from 15 characters to 22 characters(not-including null-terminating characters). For a `basic_string<wchar_t>` on Windows the amount of characters that can be stored increases from 7 to 10. Using `basic_string<wchar_t>` on Unix platforms SSO character amount from 3 to 4 characters. An additional benefit is that the size of the AZStd::basic_string class has been reduced from 40 bytes to 32 bytes when using the AZStd::allocator. When using a stateless allocator with no non static data members such as AZStd::stateless_allocator, the size of the AZStd::basic_string is 24 bytes. Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com> * Corrected comments and updated type alias to usings for AZStd::basic_string Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com> * Added Benchmarks for the basic_string and basic_fixed_string class The benchmarks currently measure the speed of the `assign` overloads. A benchmark has also been added to compare the speed swapping two `basic_string` instances by 3 memcpy vs 3 pointer swap operations Speed up string operation when in the iterator overload cases of the `assign`, `append`, `insert` and `replace` function. The code was always performing the logic to copy over a string that is overlapping, without actually checking if the string was overlapping in the first place. Added an `az_builtin_is_constant_evaluated` macro that allows use of the C++20 `std::is_constant_evaluated` feature to determine if an operation is being performed at compile time vs run time. That macro is being used to speed up the char_trait operations at run time, by using the faster standard library functions. For example char_traits::move now uses "memmove" at runtime, instead of a for loop. Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com> * Simplified string logic in AWSMetricsServiceApiTest. Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com> |
4 years ago | |
|---|---|---|
| .. | ||
| AZStd | 4 years ago | |
| AZTestShared | 4 years ago | |
| Asset | 4 years ago | |
| Console | 4 years ago | |
| DOM | 4 years ago | |
| Debug | 4 years ago | |
| EBus | 4 years ago | |
| IO | 4 years ago | |
| Math | 4 years ago | |
| Memory | 4 years ago | |
| Name | 4 years ago | |
| Platform | 4 years ago | |
| RTTI | 5 years ago | |
| Serialization/Json | 4 years ago | |
| Settings | 4 years ago | |
| Streamer | 4 years ago | |
| Time | 4 years ago | |
| AssetJsonSerializerTests.cpp | 4 years ago | |
| AssetManager.cpp | 4 years ago | |
| AssetSerializerTests.cpp | 5 years ago | |
| AzEnumTest.cpp | 5 years ago | |
| BehaviorContext.cpp | 5 years ago | |
| BehaviorContextFixture.h | 4 years ago | |
| Components.cpp | 4 years ago | |
| DLL.cpp | 5 years ago | |
| DLLMainTest.cpp | 5 years ago | |
| Debug.cpp | 4 years ago | |
| EBus.cpp | 4 years ago | |
| EntityIdTests.cpp | 5 years ago | |
| EntityTests.cpp | 5 years ago | |
| EnumTests.cpp | 4 years ago | |
| EventTests.cpp | 4 years ago | |
| FileIOBaseTestTypes.h | 4 years ago | |
| FixedWidthIntegers.cpp | 5 years ago | |
| GenericStreamMock.h | 5 years ago | |
| GenericStreamTests.cpp | 4 years ago | |
| Geometry2DUtils.cpp | 5 years ago | |
| IPC.cpp | 5 years ago | |
| Interface.cpp | 5 years ago | |
| IntersectPoint.cpp | 5 years ago | |
| JSON.cpp | 5 years ago | |
| Jobs.cpp | 4 years ago | |
| Main.cpp | 5 years ago | |
| Memory.cpp | 4 years ago | |
| Module.cpp | 5 years ago | |
| ModuleTestBus.h | 5 years ago | |
| OrderedEventBenchmarks.cpp | 4 years ago | |
| OrderedEventTests.cpp | 5 years ago | |
| Outcome.cpp | 4 years ago | |
| Patching.cpp | 4 years ago | |
| RemappableId.cpp | 5 years ago | |
| Rtti.cpp | 4 years ago | |
| Script.cpp | 4 years ago | |
| ScriptMath.cpp | 4 years ago | |
| ScriptProperty.cpp | 5 years ago | |
| Serialization.cpp | 4 years ago | |
| SerializeContextFixture.h | 5 years ago | |
| Slice.cpp | 5 years ago | |
| State.cpp | 5 years ago | |
| StatisticalProfiler.cpp | 4 years ago | |
| Statistics.cpp | 4 years ago | |
| StreamerTests.cpp | 4 years ago | |
| StringFunc.cpp | 4 years ago | |
| SystemFile.cpp | 5 years ago | |
| TaskTests.cpp | 4 years ago | |
| TestCatalog.cpp | 4 years ago | |
| TestCatalog.h | 5 years ago | |
| TickBusTest.cpp | 5 years ago | |
| UUIDTests.cpp | 4 years ago | |
| XML.cpp | 5 years ago | |
| azcoretestdll_files.cmake | 5 years ago | |
| azcoretests_files.cmake | 4 years ago | |
| aztestshared_files.cmake | 5 years ago | |