A = GetFirstValue();
B = A;
A = GetSecondValue();
C = A; // <-- this would get GetSecondValue() assigned to C instead of GetFirstValue()
Adds an SSA pass to help reduce overwriting registers, adds logic to remove self assignments, and adds logic to stop propagating when values are dirtied
From a sampling of scripts, about 2% are changed (where 1-3 unnecessary ops have been deleted).
#rb simon.tovey
#preflight 62b0d63c8e03312ad83a0c51
#jira UE-148892
[CL 20756957 by rob krajcarski in ue5-main branch]
Adds runtime events and analysis for generic meta data scopes. Any scope emitted on the "Metadata" writer will be analyzed and accessible in the metadata provider. Currently one built-in metadata type is provided: "Asset", which mimics LLMs implementation of asset tracking.
#rb ionut.matasaru
#robomerge EngineMerge
#preflight 62b1b35d827ccccb2cd7da0d
[CL 20755918 by Johan Berg in ue5-main branch]
The intent is that function take a field and an output parameter, with an optional default value:
bool LoadFromCompactBinary(FCbFieldView Field, FTypeName& OutValue, FTypeName Default = {});
Implementations must return true if the field was loaded successfully, and false if any required part of the field was missing or its value had the wrong type or range. The output value must be assigned before the function returns.
#rb Zousar.Shaker
#ROBOMERGE-AUTHOR: devin.doucette
#ROBOMERGE-SOURCE: CL 20741864 via CL 20743724 via CL 20744635
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v970-20704180)
[CL 20751365 by devin doucette in ue5-main branch]
Tasks are allocated by ConcurrentLinearAllocator that have a problem with long-living allocs as a single alloc can hold an entire memory page thus driving total mem usage up. `CreateCompletionHandle()` creates a task event that uses an allocator that doesn't have this issue. This task event depends on the parent task and can be used to wait for this task completion
#preflight 62b0a5e1640ffd8ee9c0e5b5
#rb francis.hurteau
[CL 20740243 by Andriy Tylychko in ue5-main branch]
2.Uses the same shading models and dynamic lightings code path on desktop.
3.Remove the division of PI on mobile directional light's color in C++ to line up with desktop in shaders.
#jira UE-114145
#rb Dmitriy.Dyomin, Sebastien.Hillaire
#preflight 62b0411fd8082c5c200fa32a
[CL 20734991 by wei liu in ue5-main branch]
- Track global structures and only allow them to be added once to avoid binding errors
#rb rob.krajcarski
#jira UE-151234
#preflight 62abb003ce62a29f6a7ed164
[CL 20709076 by Stu McKenna in ue5-main branch]
In this case, we sometimes export classes derived from this template. Without this workaround, we ended up with each module having its own static.
#rb nuno.leiria
#preflight 62a9ea35634e82e5d1e7ba83
#rnx
[CL 20707449 by Wojciech Krywult in ue5-main branch]
Compiling for Windows with Clang fails with "error: definition of dllimport data" with the change.
#jira UE-156975
#jira UE-156977
#preflight 62acab49c0449d3dccba307f
#rb none
#rnx
[CL 20705385 by Devin Doucette in ue5-main branch]
Parent tasks visualisation comes in the following CL
#rb catalin.dragoiu
#preflight 62ac4ea2fc406f218cc6caab
[CL 20700745 by Andriy Tylychko in ue5-main branch]
#rb Per.Larsson
#rnx
#preflight 62ab3b4a634e82e5d145f5a3
- Dumping of stats to the log file is now something that can be invoked via the IVirtualizationSystem api, so anything can call it, if desired.
- Removed the OnExit callback from the virtualization manager, we no longer print the stats to the log file on exit, but instead print them on demand.
- Add a call at the end of the cooking commandlet to dump the virtualization stats so that they appear around the same part of the log file as the cooking stats.
- Changed the verbosity from 'log' to 'display' so that we can see the stats more easily in horde.
#ROBOMERGE-AUTHOR: paul.chipchase
#ROBOMERGE-SOURCE: CL 20699898 via CL 20699907 via CL 20699911
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v968-20684695)
[CL 20700183 by paul chipchase in ue5-main branch]
- Argument is a single string which becomes the bookmark name.
#rb ionut.matasaru
#jira UE-89836
#preflight 62ab9e61c6467711b62ff8ba
[CL 20695642 by Jason Nadro in ue5-main branch]
Since DispatchCheckVerify is already FORCENOINLINE, the use of it on the lambdas causes DispatchCheckVerify to be act as an additional and unnecessary wrapper.
#preflight 62ab81cfe9031caf98b27e6c
#rb Zousar.Shaker
[CL 20694514 by Devin Doucette in ue5-main branch]
It resolves encrypted archives not being handled correctly when using modular builds. It was a problem e.g. for ShooterGame. Without the keys embedded, the game would fail to mount encrypted/signed archives.
#rb nuno.leiria
#preflight 62a9ea96634e82e5d1e7bec8
#rnx
[CL 20690277 by Wojciech Krywult in ue5-main branch]