Commit Graph

15 Commits

Author SHA1 Message Date
Zousar Shaker
cf116088ae Integrating //UE5/Dev-Cooker @ 16678003 to //UE5/Main (Zousar.Shaker-YEG-0943-Quaternary)
Non-DevIteration_ShooterGame

[CL 16678907 by Zousar Shaker in ue5-main branch]
2021-06-15 16:36:57 -04:00
michael noland
117f6b5a54 UnrealHeaderTool: Fixes for various unsafe implicit type conversion warnings (includes a few CoreUObject fixes as well, but that module is not enabled yet)
#jira UE-86949
[CODEREVIEW] marc.audy


#ROBOMERGE-SOURCE: CL 11053498 via CL 11053503 via CL 11053525
#ROBOMERGE-BOT: (v637-11041722)

[CL 11053536 by michael noland in Main branch]
2020-01-17 14:20:38 -05:00
marc audy
f71a47c374 UHT optimizations part 1 - basic cleanup, minimal measurable gains
#jira
#rnx


#ROBOMERGE-SOURCE: CL 10872174 via CL 10872175 via CL 10872176
#ROBOMERGE-BOT: (v620-10870533)

[CL 10872177 by marc audy in Main branch]
2019-12-30 15:05:12 -05:00
Ryan Durand
74c879d5f3 Updating copyrights for Engine Programs.
#rnx
#rb none
#jira none

#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869242 in //Fortnite/Release-12.00/... via CL 10869536
#ROBOMERGE-BOT: FORTNITE (Main -> Dev-EngineMerge) (v613-10869866)

[CL 10870960 by Ryan Durand in Main branch]
2019-12-26 23:06:02 -05:00
Robert Manuszewski
2752c82adc Merging //UE4/Dev-Main @ 4664414 to Dev-Core (//UE4/Dev-Core)
#rb none

[CL 4675693 by Robert Manuszewski in Dev-Core branch]
2019-01-02 00:55:51 -05:00
Johan Torp
73c3061e63 UHT rename CRC to hash, since CRC is no longer used
#rb trivial

[CL 4404532 by Johan Torp in Dev-Core branch]
2018-09-28 04:08:15 -04:00
Johan Torp
081bc43b37 Optimized UHT text hashing
~3.4x faster and stronger by:
* Find CR-free substrings to digest first
* Use single branch per character to test for CR and NUL
* Use CityHash64 instead of CRC32

#rb stefan.boberg, steve.robb

[CL 4397752 by Johan Torp in Dev-Core branch]
2018-09-26 07:39:58 -04:00
Ben Marsh
13d012685f Merging copyright update from 4.19 branch.
#rb none
#rnx
#jira

[CL 3818977 by Ben Marsh in Staging-4.19 branch]
2018-01-02 15:30:26 -05:00
Ben Marsh
20bf0eb6a1 Updating copyright notices to 2017 (copying from //Tasks/UE4/Dev-Copyright-2017).
#rb none
#lockdown Nick.Penwarden

[CL 3226823 by Ben Marsh in Main branch]
2016-12-08 08:52:44 -05:00
Ben Marsh
4ba423868f Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3209340 on 2016/11/23 by Ben.Marsh

	Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.

	Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.

	  * Every header now includes everything it needs to compile.
	        * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
	        * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
	  * Every .cpp file includes its matching .h file first.
	        * This helps validate that each header is including everything it needs to compile.
	  * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
	        * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
	        * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
	  * No engine code explicitly includes a precompiled header any more.
	        * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
	        * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.

	Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.

[CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
Matthew Griffin
bb70b349ce Merging CL 2804086 from //UE4/Release-4.11 to Dev-Main (//UE4/Dev-Main) to isolate copyright update
#lockdown Nick.Penwarden

[CL 2819020 by Matthew Griffin in Main branch]
2016-01-07 08:17:16 -05:00
Michael Noland
6ef30e720a Optimized UnrealHeaderTool
- Optimized Tabify and Macroize
- Replaced various %s Spc(constant) calls with direct string literals
- Replaced injected indentation spaces with tabs (avoiding some of the work in Tabify; they were ultimately being replaced anyways)
- Replaced various %s of LINE_TERMINATOR with compile-time string literal concatenation
- Avoided case-insensitive work in various places
- Replaced direct references to FStringOutputDevice with a typedef to facilitate future optimizations
- Used Reset() instead of Empty() on various string builders and strings to reduce reallocations
[INTEGRATE] Change 2494450 by Michael.Noland@mnoland-T2784-HDepot on 2015/03/27 16:48:25

[CL 2494606 by Michael Noland in Main branch]
2015-03-27 18:10:52 -04:00
Robert Manuszewski
a00117eff3 Making sure CRCs generated for UHT-generated code do not change across platforms.
[CL 2385269 by Robert Manuszewski in Main branch]
2014-12-11 04:58:57 -05:00
Ben Marsh
149375b14b Update copyright notices to 2015.
[CL 2379638 by Ben Marsh in Main branch]
2014-12-07 19:09:38 -05:00
Steve Robb
04c2da0cf2 #ttp 331467: Make UHT not depend on CoreUObject
#add FClass and FClasses added to encapsulate (and ultimately replace) UClass and FClassTree.
#add StringUtils contains a bunch of string-related functions which were in FHeaderParser for no real reason.
#change Replaced FClassTree with UHT and fixed up all the code which was affected.

#codereview robert.manuszewski

[CL 2045258 by Steve Robb in Main branch]
2014-04-23 18:42:01 -04:00