Revision: 19098
http://sourceforge.net/p/edk2/code/19098
Author: abiesheuvel
Date: 2015-12-02 16:23:20 +0000 (Wed, 02 Dec 2015)
Log Message:
-----------
ArmPkg RVCT: add asm macro combining EXPORT, AREA and label definition
In response to Leif's request earlier, this adds a new RVCT assembler
macro to centralize the exporting of assembly functions including the
EXPORT directive (so the linker can see it), the AREA directive (so
it's in its own section for code size reasons) and the function label
itself.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eugene Cohen <[email protected]>
Reviewed-by: Ard Biesheuvel <[email protected]>
Added Paths:
-----------
trunk/edk2/ArmPkg/Include/AsmMacroExport.inc
Added: trunk/edk2/ArmPkg/Include/AsmMacroExport.inc
===================================================================
--- trunk/edk2/ArmPkg/Include/AsmMacroExport.inc
(rev 0)
+++ trunk/edk2/ArmPkg/Include/AsmMacroExport.inc 2015-12-02 16:23:20 UTC
(rev 19098)
@@ -0,0 +1,29 @@
+;%HEADER%
+;/** @file
+; Macros to centralize the EXPORT, AREA, and definition of an assembly
+; function. The AREA prefix is required to put the function in its own
+; section so that removal of unused functions in the final link is performed.
+; This provides equivalent functionality to the compiler's --split-sections
+; option.
+;
+; Copyright (c) 2015 HP Development Company, L.P.
+;
+; This program and the accompanying materials
+; are licensed and made available under the terms and conditions of the BSD
License
+; which accompanies this distribution. The full text of the license may be
found at
+; http://opensource.org/licenses/bsd-license.php
+;
+; THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+; WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR
IMPLIED.
+;
+;**/
+
+
+ MACRO
+ RVCT_ASM_EXPORT $func
+ EXPORT $func
+ AREA s_$func, CODE, READONLY
+$func
+ MEND
+
+ END
------------------------------------------------------------------------------
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits