Change format of .type directive. Correct comment about floating

point to reflect current reality.
This commit is contained in:
Ulrich Drepper 1998-03-18 14:29:30 +00:00
parent 2e4ed6f1f8
commit fe0955cdc4

View File

@ -1,5 +1,5 @@
/* Assembler macros for ARM. /* Assembler macros for ARM.
Copyright (C) 1997 Free Software Foundation, Inc. Copyright (C) 1997, 1998 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -28,19 +28,23 @@
/* ELF uses byte-counts for .align, most others use log2 of count of bytes. */ /* ELF uses byte-counts for .align, most others use log2 of count of bytes. */
#define ALIGNARG(log2) 1<<log2 #define ALIGNARG(log2) 1<<log2
/* For ELF we need the `.type' directive to make shared libs work right. */ /* For ELF we need the `.type' directive to make shared libs work right. */
#define ASM_TYPE_DIRECTIVE(name,typearg) .type name,typearg; #define ASM_TYPE_DIRECTIVE(name,typearg) .type name,%##typearg;
#define ASM_SIZE_DIRECTIVE(name) .size name,.-name #define ASM_SIZE_DIRECTIVE(name) .size name,.-name
/* In ELF C symbols are asm symbols. */ /* In ELF C symbols are asm symbols. */
#undef NO_UNDERSCORES #undef NO_UNDERSCORES
#define NO_UNDERSCORES #define NO_UNDERSCORES
#define PLTJMP(_x) _x##(PLT)
#else #else
#define ALIGNARG(log2) log2 #define ALIGNARG(log2) log2
#define ASM_TYPE_DIRECTIVE(name,type) /* Nothing is specified. */ #define ASM_TYPE_DIRECTIVE(name,type) /* Nothing is specified. */
#define ASM_SIZE_DIRECTIVE(name) /* Nothing is specified. */ #define ASM_SIZE_DIRECTIVE(name) /* Nothing is specified. */
#define PLTJMP(_x) _x
#endif #endif
/* APCS-32 doesn't preserve the condition codes across function call. */ /* APCS-32 doesn't preserve the condition codes across function call. */
@ -56,13 +60,10 @@
instr##s regs instr##s regs
#endif #endif
/* Don't do floating point */
#define __ARM_USES_FP 1
/* Define an entry point visible from C. */ /* Define an entry point visible from C. */
#define ENTRY(name) \ #define ENTRY(name) \
ASM_GLOBAL_DIRECTIVE C_SYMBOL_NAME(name); \ ASM_GLOBAL_DIRECTIVE C_SYMBOL_NAME(name); \
ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),@function) \ ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),function) \
.align ALIGNARG(4); \ .align ALIGNARG(4); \
C_LABEL(name) \ C_LABEL(name) \
CALL_MCOUNT CALL_MCOUNT