ntdll_freestanding.def (1127B)
1 ; This Source Code Form is subject to the terms of the Mozilla Public 2 ; License, v. 2.0. If a copy of the MPL was not distributed with this 3 ; file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 5 LIBRARY ntdll 6 7 ; When we compile with -freestanding, the compiler still requires implementation 8 ; of the four functions listed below. 9 ; 10 ; We could implement our own naive versions of these functions, but that 11 ; solution is less than ideal since the implementations must be extern and are 12 ; thus picked up by the entire firefox.exe binary. This denies the rest of 13 ; firefox.exe the benefit of optimized implementations. On Windows the 14 ; sandbox is linked into firefox.exe, so we cannot just shrug and 15 ; assume that a naive implementation will not have any effect on anything. 16 ; 17 ; There are, however, optimized implementations of these functions that are 18 ; exported by ntdll.dll. OTOH, they are not included in the ntdll.lib 19 ; import library. This .def file is used to build an import library that "fills 20 ; in the blanks" and allows us to link into the ntdll implementations. 21 EXPORTS 22 memcmp 23 memcpy 24 memmove 25 memset