mirror_edk2/BaseTools/Source/Python/AutoGen
Zhao, ZhiqiangX b3497bad12 BaseTools: AutoGen and GenFds share the parser data.
V2:
Extract the common part of new API and the original main() function
into one function.

V1:
https://bugzilla.tianocore.org/show_bug.cgi?id=1288

Currently, AutoGen and GenFds run in different python interpreters. The
parser are duplicated. This patch is going to create new API for GenFds
and have the build to call that API instead of executing GenFds.py. As
such, the GenFds and build can share the parser data.

This patch is expected to save the time of GenFds about 2~3 seconds.
More details will be logged in BZ.

This is the summary measure data generated from python cProfile for
building Ovmf.

Currently:
8379147 function calls (8135450 primitive calls) in 12.580 seconds

After applying this patch:
3428712 function calls (3418881 primitive calls) in 8.944 seconds

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: ZhiqiangX Zhao <zhiqiangx.zhao@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Carsey Jaben <jaben.carsey@intel.com>
Cc: Bob Feng <bob.c.feng@intel.com>
Reviewed-by: Bob Feng <bob.c.feng@intel.com>
2018-12-07 10:12:05 +08:00
..
__init__.py Sync EDKII BaseTools to BaseTools project r1971 2010-05-18 05:04:32 +00:00
AutoGen.py BaseTools: AutoGen and GenFds share the parser data. 2018-12-07 10:12:05 +08:00
BuildEngine.py BaseTools: create and use a standard shared variable for '*' 2018-12-06 17:11:24 +08:00
GenC.py Revert BaseTools: PYTHON3 migration 2018-10-15 08:29:14 +08:00
GenDepex.py BaseTools: enable FixedAtBuild (VOID*) PCD use in the [DEPEX] section 2018-07-23 08:56:37 +08:00
GenMake.py BaseTools: list .nasm include inc files as its dependency 2018-10-25 16:43:00 +08:00
GenPcdDb.py Revert BaseTools: PYTHON3 migration 2018-10-15 08:29:14 +08:00
GenVar.py BaseTool: Support different PCDs that refers to the same EFI variable. 2018-10-22 15:19:26 +08:00
IdfClassObject.py Revert BaseTools: PYTHON3 migration 2018-10-15 08:29:14 +08:00
InfSectionParser.py Revert BaseTools: PYTHON3 migration 2018-10-15 08:29:14 +08:00
StrGather.py Revert BaseTools: PYTHON3 migration 2018-10-15 08:29:14 +08:00
UniClassObject.py BaseTools: cleanup LongFilePathSupport usage 2018-12-06 17:10:27 +08:00
ValidCheckingInfoObject.py Revert BaseTools: PYTHON3 migration 2018-10-15 08:29:14 +08:00