1## @file
2#  Base Library implementation.
3#
4#  Copyright (c) 2007 - 2016, Intel Corporation. All rights reserved.<BR>
5#  Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
6#  Portions copyright (c) 2011 - 2013, ARM Ltd. All rights reserved.<BR>
7#
8#  This program and the accompanying materials
9#  are licensed and made available under the terms and conditions of the BSD License
10#  which accompanies this distribution. The full text of the license may be found at
11#  http://opensource.org/licenses/bsd-license.php.
12#  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
13#  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
14#
15#
16##
17
18[Defines]
19  INF_VERSION                    = 0x00010005
20  BASE_NAME                      = BaseLib
21  MODULE_UNI_FILE                = BaseLib.uni
22  FILE_GUID                      = 27d67720-ea68-48ae-93da-a3a074c90e30
23  MODULE_TYPE                    = BASE
24  VERSION_STRING                 = 1.1
25  LIBRARY_CLASS                  = BaseLib
26
27#
28#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC ARM AARCH64
29#
30
31[Sources]
32  CheckSum.c
33  SwitchStack.c
34  SwapBytes64.c
35  SwapBytes32.c
36  SwapBytes16.c
37  LongJump.c
38  SetJump.c
39  RShiftU64.c
40  RRotU64.c
41  RRotU32.c
42  MultU64x64.c
43  MultU64x32.c
44  MultS64x64.c
45  ModU64x32.c
46  LShiftU64.c
47  LRotU64.c
48  LRotU32.c
49  LowBitSet64.c
50  LowBitSet32.c
51  HighBitSet64.c
52  HighBitSet32.c
53  GetPowerOfTwo64.c
54  GetPowerOfTwo32.c
55  DivU64x64Remainder.c
56  DivU64x32Remainder.c
57  DivU64x32.c
58  DivS64x64Remainder.c
59  ARShiftU64.c
60  BitField.c
61  CpuDeadLoop.c
62  Cpu.c
63  LinkedList.c
64  SafeString.c
65  String.c
66  FilePaths.c
67  BaseLibInternals.h
68
69[Sources.Ia32]
70  Ia32/Wbinvd.c | MSFT
71  Ia32/WriteMm7.c | MSFT
72  Ia32/WriteMm6.c | MSFT
73  Ia32/WriteMm5.c | MSFT
74  Ia32/WriteMm4.c | MSFT
75  Ia32/WriteMm3.c | MSFT
76  Ia32/WriteMm2.c | MSFT
77  Ia32/WriteMm1.c | MSFT
78  Ia32/WriteMm0.c | MSFT
79  Ia32/WriteLdtr.c | MSFT
80  Ia32/WriteIdtr.c | MSFT
81  Ia32/WriteGdtr.c | MSFT
82  Ia32/WriteDr7.c | MSFT
83  Ia32/WriteDr6.c | MSFT
84  Ia32/WriteDr5.c | MSFT
85  Ia32/WriteDr4.c | MSFT
86  Ia32/WriteDr3.c | MSFT
87  Ia32/WriteDr2.c | MSFT
88  Ia32/WriteDr1.c | MSFT
89  Ia32/WriteDr0.c | MSFT
90  Ia32/WriteCr4.c | MSFT
91  Ia32/WriteCr3.c | MSFT
92  Ia32/WriteCr2.c | MSFT
93  Ia32/WriteCr0.c | MSFT
94  Ia32/WriteMsr64.c | MSFT
95  Ia32/SwapBytes64.c | MSFT
96  Ia32/SetJump.c | MSFT
97  Ia32/RRotU64.c | MSFT
98  Ia32/RShiftU64.c | MSFT
99  Ia32/ReadPmc.c | MSFT
100  Ia32/ReadTsc.c | MSFT
101  Ia32/ReadLdtr.c | MSFT
102  Ia32/ReadIdtr.c | MSFT
103  Ia32/ReadGdtr.c | MSFT
104  Ia32/ReadTr.c | MSFT
105  Ia32/ReadSs.c | MSFT
106  Ia32/ReadGs.c | MSFT
107  Ia32/ReadFs.c | MSFT
108  Ia32/ReadEs.c | MSFT
109  Ia32/ReadDs.c | MSFT
110  Ia32/ReadCs.c | MSFT
111  Ia32/ReadMsr64.c | MSFT
112  Ia32/ReadMm7.c | MSFT
113  Ia32/ReadMm6.c | MSFT
114  Ia32/ReadMm5.c | MSFT
115  Ia32/ReadMm4.c | MSFT
116  Ia32/ReadMm3.c | MSFT
117  Ia32/ReadMm2.c | MSFT
118  Ia32/ReadMm1.c | MSFT
119  Ia32/ReadMm0.c | MSFT
120  Ia32/ReadEflags.c | MSFT
121  Ia32/ReadDr7.c | MSFT
122  Ia32/ReadDr6.c | MSFT
123  Ia32/ReadDr5.c | MSFT
124  Ia32/ReadDr4.c | MSFT
125  Ia32/ReadDr3.c | MSFT
126  Ia32/ReadDr2.c | MSFT
127  Ia32/ReadDr1.c | MSFT
128  Ia32/ReadDr0.c | MSFT
129  Ia32/ReadCr4.c | MSFT
130  Ia32/ReadCr3.c | MSFT
131  Ia32/ReadCr2.c | MSFT
132  Ia32/ReadCr0.c | MSFT
133  Ia32/Mwait.c | MSFT
134  Ia32/Monitor.c | MSFT
135  Ia32/ModU64x32.c | MSFT
136  Ia32/MultU64x64.c | MSFT
137  Ia32/MultU64x32.c | MSFT
138  Ia32/LShiftU64.c | MSFT
139  Ia32/LRotU64.c | MSFT
140  Ia32/LongJump.c | MSFT
141  Ia32/Invd.c | MSFT
142  Ia32/FxRestore.c | MSFT
143  Ia32/FxSave.c | MSFT
144  Ia32/FlushCacheLine.c | MSFT
145  Ia32/EnablePaging32.c | MSFT
146  Ia32/EnableInterrupts.c | MSFT
147  Ia32/EnableDisableInterrupts.c | MSFT
148  Ia32/DivU64x64Remainder.nasm| MSFT
149  Ia32/DivU64x64Remainder.asm | MSFT
150  Ia32/DivU64x32Remainder.c | MSFT
151  Ia32/DivU64x32.c | MSFT
152  Ia32/DisablePaging32.c | MSFT
153  Ia32/DisableInterrupts.c | MSFT
154  Ia32/CpuPause.c | MSFT
155  Ia32/CpuIdEx.c | MSFT
156  Ia32/CpuId.c | MSFT
157  Ia32/CpuBreakpoint.c | MSFT
158  Ia32/ARShiftU64.c | MSFT
159  Ia32/Thunk16.nasm | MSFT
160  Ia32/Thunk16.asm | MSFT
161  Ia32/EnablePaging64.nasm| MSFT
162  Ia32/EnablePaging64.asm | MSFT
163  Ia32/EnableCache.c | MSFT
164  Ia32/DisableCache.c | MSFT
165  Ia32/RdRand.nasm| MSFT
166  Ia32/RdRand.asm | MSFT
167
168  Ia32/Wbinvd.nasm| INTEL
169  Ia32/Wbinvd.asm | INTEL
170  Ia32/WriteMm7.nasm| INTEL
171  Ia32/WriteMm7.asm | INTEL
172  Ia32/WriteMm6.nasm| INTEL
173  Ia32/WriteMm6.asm | INTEL
174  Ia32/WriteMm5.nasm| INTEL
175  Ia32/WriteMm5.asm | INTEL
176  Ia32/WriteMm4.nasm| INTEL
177  Ia32/WriteMm4.asm | INTEL
178  Ia32/WriteMm3.nasm| INTEL
179  Ia32/WriteMm3.asm | INTEL
180  Ia32/WriteMm2.nasm| INTEL
181  Ia32/WriteMm2.asm | INTEL
182  Ia32/WriteMm1.nasm| INTEL
183  Ia32/WriteMm1.asm | INTEL
184  Ia32/WriteMm0.nasm| INTEL
185  Ia32/WriteMm0.asm | INTEL
186  Ia32/WriteLdtr.nasm| INTEL
187  Ia32/WriteLdtr.asm | INTEL
188  Ia32/WriteIdtr.nasm| INTEL
189  Ia32/WriteIdtr.asm | INTEL
190  Ia32/WriteGdtr.nasm| INTEL
191  Ia32/WriteGdtr.asm | INTEL
192  Ia32/WriteDr7.nasm| INTEL
193  Ia32/WriteDr7.asm | INTEL
194  Ia32/WriteDr6.nasm| INTEL
195  Ia32/WriteDr6.asm | INTEL
196  Ia32/WriteDr5.nasm| INTEL
197  Ia32/WriteDr5.asm | INTEL
198  Ia32/WriteDr4.nasm| INTEL
199  Ia32/WriteDr4.asm | INTEL
200  Ia32/WriteDr3.nasm| INTEL
201  Ia32/WriteDr3.asm | INTEL
202  Ia32/WriteDr2.nasm| INTEL
203  Ia32/WriteDr2.asm | INTEL
204  Ia32/WriteDr1.nasm| INTEL
205  Ia32/WriteDr1.asm | INTEL
206  Ia32/WriteDr0.nasm| INTEL
207  Ia32/WriteDr0.asm | INTEL
208  Ia32/WriteCr4.nasm| INTEL
209  Ia32/WriteCr4.asm | INTEL
210  Ia32/WriteCr3.nasm| INTEL
211  Ia32/WriteCr3.asm | INTEL
212  Ia32/WriteCr2.nasm| INTEL
213  Ia32/WriteCr2.asm | INTEL
214  Ia32/WriteCr0.nasm| INTEL
215  Ia32/WriteCr0.asm | INTEL
216  Ia32/WriteMsr64.nasm| INTEL
217  Ia32/WriteMsr64.asm | INTEL
218  Ia32/SwapBytes64.nasm| INTEL
219  Ia32/SwapBytes64.asm | INTEL
220  Ia32/SetJump.nasm| INTEL
221  Ia32/SetJump.asm | INTEL
222  Ia32/RRotU64.nasm| INTEL
223  Ia32/RRotU64.asm | INTEL
224  Ia32/RShiftU64.nasm| INTEL
225  Ia32/RShiftU64.asm | INTEL
226  Ia32/ReadPmc.nasm| INTEL
227  Ia32/ReadPmc.asm | INTEL
228  Ia32/ReadTsc.nasm| INTEL
229  Ia32/ReadTsc.asm | INTEL
230  Ia32/ReadLdtr.nasm| INTEL
231  Ia32/ReadLdtr.asm | INTEL
232  Ia32/ReadIdtr.nasm| INTEL
233  Ia32/ReadIdtr.asm | INTEL
234  Ia32/ReadGdtr.nasm| INTEL
235  Ia32/ReadGdtr.asm | INTEL
236  Ia32/ReadTr.nasm| INTEL
237  Ia32/ReadTr.asm | INTEL
238  Ia32/ReadSs.nasm| INTEL
239  Ia32/ReadSs.asm | INTEL
240  Ia32/ReadGs.nasm| INTEL
241  Ia32/ReadGs.asm | INTEL
242  Ia32/ReadFs.nasm| INTEL
243  Ia32/ReadFs.asm | INTEL
244  Ia32/ReadEs.nasm| INTEL
245  Ia32/ReadEs.asm | INTEL
246  Ia32/ReadDs.nasm| INTEL
247  Ia32/ReadDs.asm | INTEL
248  Ia32/ReadCs.nasm| INTEL
249  Ia32/ReadCs.asm | INTEL
250  Ia32/ReadMsr64.nasm| INTEL
251  Ia32/ReadMsr64.asm | INTEL
252  Ia32/ReadMm7.nasm| INTEL
253  Ia32/ReadMm7.asm | INTEL
254  Ia32/ReadMm6.nasm| INTEL
255  Ia32/ReadMm6.asm | INTEL
256  Ia32/ReadMm5.nasm| INTEL
257  Ia32/ReadMm5.asm | INTEL
258  Ia32/ReadMm4.nasm| INTEL
259  Ia32/ReadMm4.asm | INTEL
260  Ia32/ReadMm3.nasm| INTEL
261  Ia32/ReadMm3.asm | INTEL
262  Ia32/ReadMm2.nasm| INTEL
263  Ia32/ReadMm2.asm | INTEL
264  Ia32/ReadMm1.nasm| INTEL
265  Ia32/ReadMm1.asm | INTEL
266  Ia32/ReadMm0.nasm| INTEL
267  Ia32/ReadMm0.asm | INTEL
268  Ia32/ReadEflags.nasm| INTEL
269  Ia32/ReadEflags.asm | INTEL
270  Ia32/ReadDr7.nasm| INTEL
271  Ia32/ReadDr7.asm | INTEL
272  Ia32/ReadDr6.nasm| INTEL
273  Ia32/ReadDr6.asm | INTEL
274  Ia32/ReadDr5.nasm| INTEL
275  Ia32/ReadDr5.asm | INTEL
276  Ia32/ReadDr4.nasm| INTEL
277  Ia32/ReadDr4.asm | INTEL
278  Ia32/ReadDr3.nasm| INTEL
279  Ia32/ReadDr3.asm | INTEL
280  Ia32/ReadDr2.nasm| INTEL
281  Ia32/ReadDr2.asm | INTEL
282  Ia32/ReadDr1.nasm| INTEL
283  Ia32/ReadDr1.asm | INTEL
284  Ia32/ReadDr0.nasm| INTEL
285  Ia32/ReadDr0.asm | INTEL
286  Ia32/ReadCr4.nasm| INTEL
287  Ia32/ReadCr4.asm | INTEL
288  Ia32/ReadCr3.nasm| INTEL
289  Ia32/ReadCr3.asm | INTEL
290  Ia32/ReadCr2.nasm| INTEL
291  Ia32/ReadCr2.asm | INTEL
292  Ia32/ReadCr0.nasm| INTEL
293  Ia32/ReadCr0.asm | INTEL
294  Ia32/Mwait.nasm| INTEL
295  Ia32/Mwait.asm | INTEL
296  Ia32/Monitor.nasm| INTEL
297  Ia32/Monitor.asm | INTEL
298  Ia32/ModU64x32.nasm| INTEL
299  Ia32/ModU64x32.asm | INTEL
300  Ia32/MultU64x64.nasm| INTEL
301  Ia32/MultU64x64.asm | INTEL
302  Ia32/MultU64x32.nasm| INTEL
303  Ia32/MultU64x32.asm | INTEL
304  Ia32/LShiftU64.nasm| INTEL
305  Ia32/LShiftU64.asm | INTEL
306  Ia32/LRotU64.nasm| INTEL
307  Ia32/LRotU64.asm | INTEL
308  Ia32/LongJump.nasm| INTEL
309  Ia32/LongJump.asm | INTEL
310  Ia32/Invd.nasm| INTEL
311  Ia32/Invd.asm | INTEL
312  Ia32/FxRestore.nasm| INTEL
313  Ia32/FxRestore.asm | INTEL
314  Ia32/FxSave.nasm| INTEL
315  Ia32/FxSave.asm | INTEL
316  Ia32/FlushCacheLine.nasm| INTEL
317  Ia32/FlushCacheLine.asm | INTEL
318  Ia32/EnablePaging32.nasm| INTEL
319  Ia32/EnablePaging32.asm | INTEL
320  Ia32/EnableInterrupts.nasm| INTEL
321  Ia32/EnableInterrupts.asm | INTEL
322  Ia32/EnableDisableInterrupts.nasm| INTEL
323  Ia32/EnableDisableInterrupts.asm | INTEL
324  Ia32/DivU64x64Remainder.nasm| INTEL
325  Ia32/DivU64x64Remainder.asm | INTEL
326  Ia32/DivU64x32Remainder.nasm| INTEL
327  Ia32/DivU64x32Remainder.asm | INTEL
328  Ia32/DivU64x32.nasm| INTEL
329  Ia32/DivU64x32.asm | INTEL
330  Ia32/DisablePaging32.nasm| INTEL
331  Ia32/DisablePaging32.asm | INTEL
332  Ia32/DisableInterrupts.nasm| INTEL
333  Ia32/DisableInterrupts.asm | INTEL
334  Ia32/CpuPause.nasm| INTEL
335  Ia32/CpuPause.asm | INTEL
336  Ia32/CpuIdEx.nasm| INTEL
337  Ia32/CpuIdEx.asm | INTEL
338  Ia32/CpuId.nasm| INTEL
339  Ia32/CpuId.asm | INTEL
340  Ia32/CpuBreakpoint.nasm| INTEL
341  Ia32/CpuBreakpoint.asm | INTEL
342  Ia32/ARShiftU64.nasm| INTEL
343  Ia32/ARShiftU64.asm | INTEL
344  Ia32/Thunk16.nasm | INTEL
345  Ia32/Thunk16.asm | INTEL
346  Ia32/EnablePaging64.nasm| INTEL
347  Ia32/EnablePaging64.asm | INTEL
348  Ia32/EnableCache.nasm| INTEL
349  Ia32/EnableCache.asm | INTEL
350  Ia32/DisableCache.nasm| INTEL
351  Ia32/DisableCache.asm | INTEL
352  Ia32/RdRand.nasm| INTEL
353  Ia32/RdRand.asm | INTEL
354
355  Ia32/GccInline.c | GCC
356  Ia32/Thunk16.nasm | GCC
357  Ia32/Thunk16.S | XCODE
358  Ia32/EnableDisableInterrupts.nasm| GCC
359  Ia32/EnableDisableInterrupts.S | GCC
360  Ia32/EnablePaging64.nasm| GCC
361  Ia32/EnablePaging64.S | GCC
362  Ia32/DisablePaging32.nasm| GCC
363  Ia32/DisablePaging32.S | GCC
364  Ia32/EnablePaging32.nasm| GCC
365  Ia32/EnablePaging32.S | GCC
366  Ia32/Mwait.nasm| GCC
367  Ia32/Mwait.S | GCC
368  Ia32/Monitor.nasm| GCC
369  Ia32/Monitor.S | GCC
370  Ia32/CpuIdEx.nasm| GCC
371  Ia32/CpuIdEx.S | GCC
372  Ia32/CpuId.nasm| GCC
373  Ia32/CpuId.S | GCC
374  Ia32/LongJump.nasm| GCC
375  Ia32/LongJump.S | GCC
376  Ia32/SetJump.nasm| GCC
377  Ia32/SetJump.S | GCC
378  Ia32/SwapBytes64.nasm| GCC
379  Ia32/SwapBytes64.S | GCC
380  Ia32/DivU64x64Remainder.nasm| GCC
381  Ia32/DivU64x64Remainder.S | GCC
382  Ia32/DivU64x32Remainder.nasm| GCC
383  Ia32/DivU64x32Remainder.S | GCC
384  Ia32/ModU64x32.nasm| GCC
385  Ia32/ModU64x32.S | GCC
386  Ia32/DivU64x32.nasm| GCC
387  Ia32/DivU64x32.S | GCC
388  Ia32/MultU64x64.nasm| GCC
389  Ia32/MultU64x64.S | GCC
390  Ia32/MultU64x32.nasm| GCC
391  Ia32/MultU64x32.S | GCC
392  Ia32/RRotU64.nasm| GCC
393  Ia32/RRotU64.S | GCC
394  Ia32/LRotU64.nasm| GCC
395  Ia32/LRotU64.S | GCC
396  Ia32/ARShiftU64.nasm| GCC
397  Ia32/ARShiftU64.S | GCC
398  Ia32/RShiftU64.nasm| GCC
399  Ia32/RShiftU64.S | GCC
400  Ia32/LShiftU64.nasm| GCC
401  Ia32/LShiftU64.S | GCC
402  Ia32/EnableCache.nasm| GCC
403  Ia32/EnableCache.S | GCC
404  Ia32/DisableCache.nasm| GCC
405  Ia32/DisableCache.S | GCC
406  Ia32/RdRand.nasm| GCC
407  Ia32/RdRand.S | GCC
408
409  Ia32/DivS64x64Remainder.c
410  Ia32/InternalSwitchStack.c | MSFT
411  Ia32/InternalSwitchStack.c | INTEL
412  Ia32/InternalSwitchStack.S | GCC
413  Ia32/InternalSwitchStack.nasm | GCC
414  Ia32/Non-existing.c
415  Unaligned.c
416  X86WriteIdtr.c
417  X86WriteGdtr.c
418  X86Thunk.c
419  X86ReadIdtr.c
420  X86ReadGdtr.c
421  X86Msr.c
422  X86MemoryFence.c | MSFT
423  X86MemoryFence.c | INTEL
424  X86GetInterruptState.c
425  X86FxSave.c
426  X86FxRestore.c
427  X86EnablePaging64.c
428  X86EnablePaging32.c
429  X86DisablePaging64.c
430  X86DisablePaging32.c
431  X86RdRand.c
432
433[Sources.X64]
434  X64/Thunk16.nasm
435  X64/Thunk16.asm
436  X64/CpuIdEx.nasm
437  X64/CpuIdEx.asm
438  X64/CpuId.nasm
439  X64/CpuId.asm
440  X64/LongJump.nasm
441  X64/LongJump.asm
442  X64/SetJump.nasm
443  X64/SetJump.asm
444  X64/SwitchStack.nasm
445  X64/SwitchStack.asm
446  X64/EnableCache.nasm
447  X64/EnableCache.asm
448  X64/DisableCache.nasm
449  X64/DisableCache.asm
450
451  X64/CpuBreakpoint.c | MSFT
452  X64/WriteMsr64.c | MSFT
453  X64/ReadMsr64.c | MSFT
454  X64/RdRand.nasm| MSFT
455  X64/RdRand.asm | MSFT
456  X64/CpuPause.nasm| MSFT
457  X64/CpuPause.asm | MSFT
458  X64/EnableDisableInterrupts.nasm| MSFT
459  X64/EnableDisableInterrupts.asm | MSFT
460  X64/DisableInterrupts.nasm| MSFT
461  X64/DisableInterrupts.asm | MSFT
462  X64/EnableInterrupts.nasm| MSFT
463  X64/EnableInterrupts.asm | MSFT
464  X64/FlushCacheLine.nasm| MSFT
465  X64/FlushCacheLine.asm | MSFT
466  X64/Invd.nasm| MSFT
467  X64/Invd.asm | MSFT
468  X64/Wbinvd.nasm| MSFT
469  X64/Wbinvd.asm | MSFT
470  X64/DisablePaging64.nasm| MSFT
471  X64/DisablePaging64.asm | MSFT
472  X64/Mwait.nasm| MSFT
473  X64/Mwait.asm | MSFT
474  X64/Monitor.nasm| MSFT
475  X64/Monitor.asm | MSFT
476  X64/ReadPmc.nasm| MSFT
477  X64/ReadPmc.asm | MSFT
478  X64/ReadTsc.nasm| MSFT
479  X64/ReadTsc.asm | MSFT
480  X64/WriteMm7.nasm| MSFT
481  X64/WriteMm7.asm | MSFT
482  X64/WriteMm6.nasm| MSFT
483  X64/WriteMm6.asm | MSFT
484  X64/WriteMm5.nasm| MSFT
485  X64/WriteMm5.asm | MSFT
486  X64/WriteMm4.nasm| MSFT
487  X64/WriteMm4.asm | MSFT
488  X64/WriteMm3.nasm| MSFT
489  X64/WriteMm3.asm | MSFT
490  X64/WriteMm2.nasm| MSFT
491  X64/WriteMm2.asm | MSFT
492  X64/WriteMm1.nasm| MSFT
493  X64/WriteMm1.asm | MSFT
494  X64/WriteMm0.nasm| MSFT
495  X64/WriteMm0.asm | MSFT
496  X64/ReadMm7.nasm| MSFT
497  X64/ReadMm7.asm | MSFT
498  X64/ReadMm6.nasm| MSFT
499  X64/ReadMm6.asm | MSFT
500  X64/ReadMm5.nasm| MSFT
501  X64/ReadMm5.asm | MSFT
502  X64/ReadMm4.nasm| MSFT
503  X64/ReadMm4.asm | MSFT
504  X64/ReadMm3.nasm| MSFT
505  X64/ReadMm3.asm | MSFT
506  X64/ReadMm2.nasm| MSFT
507  X64/ReadMm2.asm | MSFT
508  X64/ReadMm1.nasm| MSFT
509  X64/ReadMm1.asm | MSFT
510  X64/ReadMm0.nasm| MSFT
511  X64/ReadMm0.asm | MSFT
512  X64/FxRestore.nasm| MSFT
513  X64/FxRestore.asm | MSFT
514  X64/FxSave.nasm| MSFT
515  X64/FxSave.asm | MSFT
516  X64/WriteLdtr.nasm| MSFT
517  X64/WriteLdtr.asm | MSFT
518  X64/ReadLdtr.nasm| MSFT
519  X64/ReadLdtr.asm | MSFT
520  X64/WriteIdtr.nasm| MSFT
521  X64/WriteIdtr.asm | MSFT
522  X64/ReadIdtr.nasm| MSFT
523  X64/ReadIdtr.asm | MSFT
524  X64/WriteGdtr.nasm| MSFT
525  X64/WriteGdtr.asm | MSFT
526  X64/ReadGdtr.nasm| MSFT
527  X64/ReadGdtr.asm | MSFT
528  X64/ReadTr.nasm| MSFT
529  X64/ReadTr.asm | MSFT
530  X64/ReadSs.nasm| MSFT
531  X64/ReadSs.asm | MSFT
532  X64/ReadGs.nasm| MSFT
533  X64/ReadGs.asm | MSFT
534  X64/ReadFs.nasm| MSFT
535  X64/ReadFs.asm | MSFT
536  X64/ReadEs.nasm| MSFT
537  X64/ReadEs.asm | MSFT
538  X64/ReadDs.nasm| MSFT
539  X64/ReadDs.asm | MSFT
540  X64/ReadCs.nasm| MSFT
541  X64/ReadCs.asm | MSFT
542  X64/WriteDr7.nasm| MSFT
543  X64/WriteDr7.asm | MSFT
544  X64/WriteDr6.nasm| MSFT
545  X64/WriteDr6.asm | MSFT
546  X64/WriteDr5.nasm| MSFT
547  X64/WriteDr5.asm | MSFT
548  X64/WriteDr4.nasm| MSFT
549  X64/WriteDr4.asm | MSFT
550  X64/WriteDr3.nasm| MSFT
551  X64/WriteDr3.asm | MSFT
552  X64/WriteDr2.nasm| MSFT
553  X64/WriteDr2.asm | MSFT
554  X64/WriteDr1.nasm| MSFT
555  X64/WriteDr1.asm | MSFT
556  X64/WriteDr0.nasm| MSFT
557  X64/WriteDr0.asm | MSFT
558  X64/ReadDr7.nasm| MSFT
559  X64/ReadDr7.asm | MSFT
560  X64/ReadDr6.nasm| MSFT
561  X64/ReadDr6.asm | MSFT
562  X64/ReadDr5.nasm| MSFT
563  X64/ReadDr5.asm | MSFT
564  X64/ReadDr4.nasm| MSFT
565  X64/ReadDr4.asm | MSFT
566  X64/ReadDr3.nasm| MSFT
567  X64/ReadDr3.asm | MSFT
568  X64/ReadDr2.nasm| MSFT
569  X64/ReadDr2.asm | MSFT
570  X64/ReadDr1.nasm| MSFT
571  X64/ReadDr1.asm | MSFT
572  X64/ReadDr0.nasm| MSFT
573  X64/ReadDr0.asm | MSFT
574  X64/WriteCr4.nasm| MSFT
575  X64/WriteCr4.asm | MSFT
576  X64/WriteCr3.nasm| MSFT
577  X64/WriteCr3.asm | MSFT
578  X64/WriteCr2.nasm| MSFT
579  X64/WriteCr2.asm | MSFT
580  X64/WriteCr0.nasm| MSFT
581  X64/WriteCr0.asm | MSFT
582  X64/ReadCr4.nasm| MSFT
583  X64/ReadCr4.asm | MSFT
584  X64/ReadCr3.nasm| MSFT
585  X64/ReadCr3.asm | MSFT
586  X64/ReadCr2.nasm| MSFT
587  X64/ReadCr2.asm | MSFT
588  X64/ReadCr0.nasm| MSFT
589  X64/ReadCr0.asm | MSFT
590  X64/ReadEflags.nasm| MSFT
591  X64/ReadEflags.asm | MSFT
592
593  X64/CpuBreakpoint.nasm| INTEL
594  X64/CpuBreakpoint.asm | INTEL
595  X64/WriteMsr64.nasm| INTEL
596  X64/WriteMsr64.asm | INTEL
597  X64/ReadMsr64.nasm| INTEL
598  X64/ReadMsr64.asm | INTEL
599  X64/RdRand.nasm| INTEL
600  X64/RdRand.asm | INTEL
601  X64/CpuPause.nasm| INTEL
602  X64/CpuPause.asm | INTEL
603  X64/EnableDisableInterrupts.nasm| INTEL
604  X64/EnableDisableInterrupts.asm | INTEL
605  X64/DisableInterrupts.nasm| INTEL
606  X64/DisableInterrupts.asm | INTEL
607  X64/EnableInterrupts.nasm| INTEL
608  X64/EnableInterrupts.asm | INTEL
609  X64/FlushCacheLine.nasm| INTEL
610  X64/FlushCacheLine.asm | INTEL
611  X64/Invd.nasm| INTEL
612  X64/Invd.asm | INTEL
613  X64/Wbinvd.nasm| INTEL
614  X64/Wbinvd.asm | INTEL
615  X64/DisablePaging64.nasm| INTEL
616  X64/DisablePaging64.asm | INTEL
617  X64/Mwait.nasm| INTEL
618  X64/Mwait.asm | INTEL
619  X64/Monitor.nasm| INTEL
620  X64/Monitor.asm | INTEL
621  X64/ReadPmc.nasm| INTEL
622  X64/ReadPmc.asm | INTEL
623  X64/ReadTsc.nasm| INTEL
624  X64/ReadTsc.asm | INTEL
625  X64/WriteMm7.nasm| INTEL
626  X64/WriteMm7.asm | INTEL
627  X64/WriteMm6.nasm| INTEL
628  X64/WriteMm6.asm | INTEL
629  X64/WriteMm5.nasm| INTEL
630  X64/WriteMm5.asm | INTEL
631  X64/WriteMm4.nasm| INTEL
632  X64/WriteMm4.asm | INTEL
633  X64/WriteMm3.nasm| INTEL
634  X64/WriteMm3.asm | INTEL
635  X64/WriteMm2.nasm| INTEL
636  X64/WriteMm2.asm | INTEL
637  X64/WriteMm1.nasm| INTEL
638  X64/WriteMm1.asm | INTEL
639  X64/WriteMm0.nasm| INTEL
640  X64/WriteMm0.asm | INTEL
641  X64/ReadMm7.nasm| INTEL
642  X64/ReadMm7.asm | INTEL
643  X64/ReadMm6.nasm| INTEL
644  X64/ReadMm6.asm | INTEL
645  X64/ReadMm5.nasm| INTEL
646  X64/ReadMm5.asm | INTEL
647  X64/ReadMm4.nasm| INTEL
648  X64/ReadMm4.asm | INTEL
649  X64/ReadMm3.nasm| INTEL
650  X64/ReadMm3.asm | INTEL
651  X64/ReadMm2.nasm| INTEL
652  X64/ReadMm2.asm | INTEL
653  X64/ReadMm1.nasm| INTEL
654  X64/ReadMm1.asm | INTEL
655  X64/ReadMm0.nasm| INTEL
656  X64/ReadMm0.asm | INTEL
657  X64/FxRestore.nasm| INTEL
658  X64/FxRestore.asm | INTEL
659  X64/FxSave.nasm| INTEL
660  X64/FxSave.asm | INTEL
661  X64/WriteLdtr.nasm| INTEL
662  X64/WriteLdtr.asm | INTEL
663  X64/ReadLdtr.nasm| INTEL
664  X64/ReadLdtr.asm | INTEL
665  X64/WriteIdtr.nasm| INTEL
666  X64/WriteIdtr.asm | INTEL
667  X64/ReadIdtr.nasm| INTEL
668  X64/ReadIdtr.asm | INTEL
669  X64/WriteGdtr.nasm| INTEL
670  X64/WriteGdtr.asm | INTEL
671  X64/ReadGdtr.nasm| INTEL
672  X64/ReadGdtr.asm | INTEL
673  X64/ReadTr.nasm| INTEL
674  X64/ReadTr.asm | INTEL
675  X64/ReadSs.nasm| INTEL
676  X64/ReadSs.asm | INTEL
677  X64/ReadGs.nasm| INTEL
678  X64/ReadGs.asm | INTEL
679  X64/ReadFs.nasm| INTEL
680  X64/ReadFs.asm | INTEL
681  X64/ReadEs.nasm| INTEL
682  X64/ReadEs.asm | INTEL
683  X64/ReadDs.nasm| INTEL
684  X64/ReadDs.asm | INTEL
685  X64/ReadCs.nasm| INTEL
686  X64/ReadCs.asm | INTEL
687  X64/WriteDr7.nasm| INTEL
688  X64/WriteDr7.asm | INTEL
689  X64/WriteDr6.nasm| INTEL
690  X64/WriteDr6.asm | INTEL
691  X64/WriteDr5.nasm| INTEL
692  X64/WriteDr5.asm | INTEL
693  X64/WriteDr4.nasm| INTEL
694  X64/WriteDr4.asm | INTEL
695  X64/WriteDr3.nasm| INTEL
696  X64/WriteDr3.asm | INTEL
697  X64/WriteDr2.nasm| INTEL
698  X64/WriteDr2.asm | INTEL
699  X64/WriteDr1.nasm| INTEL
700  X64/WriteDr1.asm | INTEL
701  X64/WriteDr0.nasm| INTEL
702  X64/WriteDr0.asm | INTEL
703  X64/ReadDr7.nasm| INTEL
704  X64/ReadDr7.asm | INTEL
705  X64/ReadDr6.nasm| INTEL
706  X64/ReadDr6.asm | INTEL
707  X64/ReadDr5.nasm| INTEL
708  X64/ReadDr5.asm | INTEL
709  X64/ReadDr4.nasm| INTEL
710  X64/ReadDr4.asm | INTEL
711  X64/ReadDr3.nasm| INTEL
712  X64/ReadDr3.asm | INTEL
713  X64/ReadDr2.nasm| INTEL
714  X64/ReadDr2.asm | INTEL
715  X64/ReadDr1.nasm| INTEL
716  X64/ReadDr1.asm | INTEL
717  X64/ReadDr0.nasm| INTEL
718  X64/ReadDr0.asm | INTEL
719  X64/WriteCr4.nasm| INTEL
720  X64/WriteCr4.asm | INTEL
721  X64/WriteCr3.nasm| INTEL
722  X64/WriteCr3.asm | INTEL
723  X64/WriteCr2.nasm| INTEL
724  X64/WriteCr2.asm | INTEL
725  X64/WriteCr0.nasm| INTEL
726  X64/WriteCr0.asm | INTEL
727  X64/ReadCr4.nasm| INTEL
728  X64/ReadCr4.asm | INTEL
729  X64/ReadCr3.nasm| INTEL
730  X64/ReadCr3.asm | INTEL
731  X64/ReadCr2.nasm| INTEL
732  X64/ReadCr2.asm | INTEL
733  X64/ReadCr0.nasm| INTEL
734  X64/ReadCr0.asm | INTEL
735  X64/ReadEflags.nasm| INTEL
736  X64/ReadEflags.asm | INTEL
737
738  X64/Non-existing.c
739  Math64.c
740  Unaligned.c
741  X86WriteIdtr.c
742  X86WriteGdtr.c
743  X86Thunk.c
744  X86ReadIdtr.c
745  X86ReadGdtr.c
746  X86Msr.c
747  X86MemoryFence.c | MSFT
748  X86MemoryFence.c | INTEL
749  X86GetInterruptState.c
750  X86FxSave.c
751  X86FxRestore.c
752  X86EnablePaging64.c
753  X86EnablePaging32.c
754  X86DisablePaging64.c
755  X86DisablePaging32.c
756  X86RdRand.c
757  X64/GccInline.c | GCC
758  X64/Thunk16.S | XCODE
759  X64/SwitchStack.nasm| GCC
760  X64/SwitchStack.S | GCC
761  X64/SetJump.nasm| GCC
762  X64/SetJump.S | GCC
763  X64/LongJump.nasm| GCC
764  X64/LongJump.S | GCC
765  X64/EnableDisableInterrupts.nasm| GCC
766  X64/EnableDisableInterrupts.S | GCC
767  X64/DisablePaging64.nasm| GCC
768  X64/DisablePaging64.S | GCC
769  X64/CpuId.nasm| GCC
770  X64/CpuId.S | GCC
771  X64/CpuIdEx.nasm| GCC
772  X64/CpuIdEx.S | GCC
773  X64/EnableCache.nasm| GCC
774  X64/EnableCache.S | GCC
775  X64/DisableCache.nasm| GCC
776  X64/DisableCache.S | GCC
777  X64/RdRand.nasm| GCC
778  X64/RdRand.S | GCC
779  ChkStkGcc.c  | GCC
780
781[Sources.IPF]
782  Ipf/AccessGp.s
783  Ipf/ReadCpuid.s
784  Ipf/ExecFc.s
785  Ipf/AsmPalCall.s
786  Ipf/AccessPsr.s
787  Ipf/AccessPmr.s
788  Ipf/AccessKr.s
789  Ipf/AccessKr7.s
790  Ipf/AccessGcr.s
791  Ipf/AccessEicr.s
792  Ipf/AccessDbr.s
793  Ipf/AccessMsr.s        | INTEL
794  Ipf/AccessMsr.s        | GCC
795  Ipf/AccessMsrDb.s      | MSFT
796  Ipf/InternalFlushCacheRange.s
797  Ipf/FlushCacheRange.c
798  Ipf/InternalSwitchStack.c
799  Ipf/GetInterruptState.s
800  Ipf/CpuPause.s
801  Ipf/CpuBreakpoint.c    | INTEL
802  Ipf/CpuBreakpointMsc.c | MSFT
803  Ipf/AsmCpuMisc.s       | GCC
804  Ipf/Unaligned.c
805  Ipf/SwitchStack.s
806  Ipf/LongJmp.s
807  Ipf/SetJmp.s
808  Ipf/ReadCr.s
809  Ipf/ReadAr.s
810  Ipf/Ia64gen.h
811  Ipf/Asm.h
812  Math64.c
813
814[Sources.EBC]
815  Ebc/CpuBreakpoint.c
816  Ebc/SetJumpLongJump.c
817  Ebc/SwitchStack.c
818  Unaligned.c
819  Math64.c
820
821[Sources.ARM]
822  Arm/InternalSwitchStack.c
823  Arm/Unaligned.c
824  Math64.c                   | RVCT
825
826  Arm/SwitchStack.asm        | RVCT
827  Arm/SetJumpLongJump.asm    | RVCT
828  Arm/DisableInterrupts.asm  | RVCT
829  Arm/EnableInterrupts.asm   | RVCT
830  Arm/GetInterruptsState.asm | RVCT
831  Arm/CpuPause.asm           | RVCT
832  Arm/CpuBreakpoint.asm      | RVCT
833  Arm/MemoryFence.asm        | RVCT
834
835  Arm/Math64.S                  | GCC
836  Arm/SwitchStack.S             | GCC
837  Arm/EnableInterrupts.S        | GCC
838  Arm/DisableInterrupts.S       | GCC
839  Arm/GetInterruptsState.S      | GCC
840  Arm/SetJumpLongJump.S         | GCC
841  Arm/CpuBreakpoint.S           | GCC
842  Arm/MemoryFence.S             | GCC
843
844[Sources.AARCH64]
845  Arm/InternalSwitchStack.c
846  Arm/Unaligned.c
847  Math64.c
848
849  AArch64/MemoryFence.S             | GCC
850  AArch64/SwitchStack.S             | GCC
851  AArch64/EnableInterrupts.S        | GCC
852  AArch64/DisableInterrupts.S       | GCC
853  AArch64/GetInterruptsState.S      | GCC
854  AArch64/SetJumpLongJump.S         | GCC
855  AArch64/CpuBreakpoint.S           | GCC
856
857[Packages]
858  MdePkg/MdePkg.dec
859
860[LibraryClasses]
861  PcdLib
862  DebugLib
863  BaseMemoryLib
864
865[Pcd]
866  gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength      ## SOMETIMES_CONSUMES
867  gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength     ## SOMETIMES_CONSUMES
868  gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength   ## SOMETIMES_CONSUMES
869  gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask            ## SOMETIMES_CONSUMES
870
871[FeaturePcd]
872  gEfiMdePkgTokenSpaceGuid.PcdVerifyNodeInList  ## CONSUMES
873