|
List Info
Thread: add .type and .size directives
|
|
| add .type and .size directives |

|
2008-06-09 12:13:58 |
Hi,
this patch adds .type and .size directives for generated
assembler files. Ok to Apply?
Ken
newlib/ChangeLog:
2008-06-09 Ken Werner <ken.werner de.ibm.com>
* libc/machine/spu/mk_syscalls: Provide .type and .size
directives
in generated assembler files.
* libc/machine/spu/fprintf.S: Regenerate.
* libc/machine/spu/fscanf.S: Regenerate.
* libc/machine/spu/printf.S: Regenerate.
* libc/machine/spu/scanf.S: Regenerate.
* libc/machine/spu/snprintf.S: Regenerate.
* libc/machine/spu/sprintf.S: Regenerate.
* libc/machine/spu/sscanf.S: Regenerate.
* libc/machine/spu/stack_reg_va.S (__stack_reg_va): Provide
.type
and .size directives.
* libc/machine/spu/setjmp.S (setjmp): Likewise.
(longjmp): Likewise.
Index: src/newlib/libc/machine/spu/fprintf.S
============================================================
=======
--- src.orig/newlib/libc/machine/spu/fprintf.S
+++ src/newlib/libc/machine/spu/fprintf.S
 -33,6
+33,7 
.text
.align 4
GLOBL fprintf
+ .type fprintf, function
fprintf:
stqd $0, 16($sp) /* save caller address */
il $2, 2 /* number of fixed arguments */
 -53,3
+54,4  fprintf:
a $sp, $sp, $2
lqd $0, 16($sp) /* load caller address */
bi $0 /* return to caller */
+ .size fprintf, .-fprintf
Index: src/newlib/libc/machine/spu/fscanf.S
============================================================
=======
--- src.orig/newlib/libc/machine/spu/fscanf.S
+++ src/newlib/libc/machine/spu/fscanf.S
 -33,6
+33,7 
.text
.align 4
GLOBL fscanf
+ .type fscanf, function
fscanf:
stqd $0, 16($sp) /* save caller address */
il $2, 2 /* number of fixed arguments */
 -53,3
+54,4  fscanf:
a $sp, $sp, $2
lqd $0, 16($sp) /* load caller address */
bi $0 /* return to caller */
+ .size fscanf, .-fscanf
Index: src/newlib/libc/machine/spu/mk_syscalls
============================================================
=======
--- src.orig/newlib/libc/machine/spu/mk_syscalls
+++ src/newlib/libc/machine/spu/mk_syscalls
 -69,6
+69,7  while ($line = <DEFS>) {
print SOURCE " .textn";
print SOURCE " .align 4n";
print SOURCE " GLOBL ", $name, "n";
+ print SOURCE " .type ", $name, ", functionn";
print SOURCE $name, ":n";
print SOURCE " stqd $0, 16($sp) /* save caller
address */n";
 -93,6
+94,8  while ($line = <DEFS>) {
print SOURCE " lqd $0, 16($sp) /* load caller
address */n";
print SOURCE " bi $0 /* return to caller
*/n";
+ print SOURCE " .size ", $name, ", .-",
$name, "n";
+
close(SOURCE);
}
Index: src/newlib/libc/machine/spu/printf.S
============================================================
=======
--- src.orig/newlib/libc/machine/spu/printf.S
+++ src/newlib/libc/machine/spu/printf.S
 -33,6
+33,7 
.text
.align 4
GLOBL printf
+ .type printf, function
printf:
stqd $0, 16($sp) /* save caller address */
il $2, 1 /* number of fixed arguments */
 -47,3
+48,4  printf:
a $sp, $sp, $2
lqd $0, 16($sp) /* load caller address */
bi $0 /* return to caller */
+ .size printf, .-printf
Index: src/newlib/libc/machine/spu/scanf.S
============================================================
=======
--- src.orig/newlib/libc/machine/spu/scanf.S
+++ src/newlib/libc/machine/spu/scanf.S
 -33,6
+33,7 
.text
.align 4
GLOBL scanf
+ .type scanf, function
scanf:
stqd $0, 16($sp) /* save caller address */
il $2, 1 /* number of fixed arguments */
 -47,3
+48,4  scanf:
a $sp, $sp, $2
lqd $0, 16($sp) /* load caller address */
bi $0 /* return to caller */
+ .size scanf, .-scanf
Index: src/newlib/libc/machine/spu/setjmp.S
============================================================
=======
--- src.orig/newlib/libc/machine/spu/setjmp.S
+++ src/newlib/libc/machine/spu/setjmp.S
 -36,6
+36,7  Author: Andreas Neukoetter (ti95neuk de.
.text
.align 2
.global setjmp
+ .type setjmp, function
setjmp:
stqd $80, 2*16($3)
stqd $81, 3*16($3)
 -97,6
+98,7  setjmp:
setjmp_ret:
bi $0
+ .size setjmp, .-setjmp
/*
int longjmp( jmp_buf env, int val );
 -104,6
+106,7  setjmp_ret:
.text
.align 2
.global longjmp
+ .type longjmp, function
longjmp:
lr $127, $1
 -176,4
+179,5  longjmp:
longjmp_ret:
bi $0
+ .size longjmp, .-longjmp
Index: src/newlib/libc/machine/spu/snprintf.S
============================================================
=======
--- src.orig/newlib/libc/machine/spu/snprintf.S
+++ src/newlib/libc/machine/spu/snprintf.S
 -33,6
+33,7 
.text
.align 4
GLOBL snprintf
+ .type snprintf, function
snprintf:
stqd $0, 16($sp) /* save caller address */
il $2, 3 /* number of fixed arguments */
 -47,3
+48,4  snprintf:
a $sp, $sp, $2
lqd $0, 16($sp) /* load caller address */
bi $0 /* return to caller */
+ .size snprintf, .-snprintf
Index: src/newlib/libc/machine/spu/sprintf.S
============================================================
=======
--- src.orig/newlib/libc/machine/spu/sprintf.S
+++ src/newlib/libc/machine/spu/sprintf.S
 -33,6
+33,7 
.text
.align 4
GLOBL sprintf
+ .type sprintf, function
sprintf:
stqd $0, 16($sp) /* save caller address */
il $2, 2 /* number of fixed arguments */
 -47,3
+48,4  sprintf:
a $sp, $sp, $2
lqd $0, 16($sp) /* load caller address */
bi $0 /* return to caller */
+ .size sprintf, .-sprintf
Index: src/newlib/libc/machine/spu/sscanf.S
============================================================
=======
--- src.orig/newlib/libc/machine/spu/sscanf.S
+++ src/newlib/libc/machine/spu/sscanf.S
 -33,6
+33,7 
.text
.align 4
GLOBL sscanf
+ .type sscanf, function
sscanf:
stqd $0, 16($sp) /* save caller address */
il $2, 2 /* number of fixed arguments */
 -47,3
+48,4  sscanf:
a $sp, $sp, $2
lqd $0, 16($sp) /* load caller address */
bi $0 /* return to caller */
+ .size sscanf, .-sscanf
Index: src/newlib/libc/machine/spu/stack_reg_va.S
============================================================
=======
--- src.orig/newlib/libc/machine/spu/stack_reg_va.S
+++ src/newlib/libc/machine/spu/stack_reg_va.S
 -85,6
+85,7 
.text
.global __stack_reg_va
+ .type __stack_reg_va, function
__stack_reg_va:
 -164,3
+165,6  save_regs_2:
ai ptr, ptr, -16
brz tmp, save_regs_1 /* if (tmp == 0) jump */
bi link /* finish to make va_list */
+
+ .size __stack_reg_va, .-__stack_reg_va
+
|
|
| Re: add .type and .size directives |

|
2008-06-16 13:50:31 |
Patch checked in.
-- Jeff J.
Ken Werner wrote:
> Hi,
>
> this patch adds .type and .size directives for
generated assembler files. Ok to Apply?
>
> Ken
>
> newlib/ChangeLog:
>
> 2008-06-09 Ken Werner <ken.werner de.ibm.com>
>
> * libc/machine/spu/mk_syscalls: Provide .type and
.size directives
> in generated assembler files.
> * libc/machine/spu/fprintf.S: Regenerate.
> * libc/machine/spu/fscanf.S: Regenerate.
> * libc/machine/spu/printf.S: Regenerate.
> * libc/machine/spu/scanf.S: Regenerate.
> * libc/machine/spu/snprintf.S: Regenerate.
> * libc/machine/spu/sprintf.S: Regenerate.
> * libc/machine/spu/sscanf.S: Regenerate.
> * libc/machine/spu/stack_reg_va.S (__stack_reg_va):
Provide .type
> and .size directives.
> * libc/machine/spu/setjmp.S (setjmp): Likewise.
> (longjmp): Likewise.
>
> Index: src/newlib/libc/machine/spu/fprintf.S
>
============================================================
=======
> --- src.orig/newlib/libc/machine/spu/fprintf.S
> +++ src/newlib/libc/machine/spu/fprintf.S
>  -33,6 +33,7 
> .text
> .align 4
> GLOBL fprintf
> + .type fprintf, function
> fprintf:
> stqd $0, 16($sp) /* save caller address */
> il $2, 2 /* number of fixed arguments */
>  -53,3 +54,4  fprintf:
> a $sp, $sp, $2
> lqd $0, 16($sp) /* load caller address */
> bi $0 /* return to caller */
> + .size fprintf, .-fprintf
> Index: src/newlib/libc/machine/spu/fscanf.S
>
============================================================
=======
> --- src.orig/newlib/libc/machine/spu/fscanf.S
> +++ src/newlib/libc/machine/spu/fscanf.S
>  -33,6 +33,7 
> .text
> .align 4
> GLOBL fscanf
> + .type fscanf, function
> fscanf:
> stqd $0, 16($sp) /* save caller address */
> il $2, 2 /* number of fixed arguments */
>  -53,3 +54,4  fscanf:
> a $sp, $sp, $2
> lqd $0, 16($sp) /* load caller address */
> bi $0 /* return to caller */
> + .size fscanf, .-fscanf
> Index: src/newlib/libc/machine/spu/mk_syscalls
>
============================================================
=======
> --- src.orig/newlib/libc/machine/spu/mk_syscalls
> +++ src/newlib/libc/machine/spu/mk_syscalls
>  -69,6 +69,7  while ($line = <DEFS>) {
> print SOURCE " .textn";
> print SOURCE " .align 4n";
> print SOURCE " GLOBL ", $name,
"n";
> + print SOURCE " .type ", $name, ",
functionn";
> print SOURCE $name, ":n";
>
> print SOURCE " stqd $0, 16($sp) /* save
caller address */n";
>  -93,6 +94,8  while ($line = <DEFS>) {
> print SOURCE " lqd $0, 16($sp) /* load
caller address */n";
> print SOURCE " bi $0 /* return to
caller */n";
>
> + print SOURCE " .size ", $name, ",
.-", $name, "n";
> +
> close(SOURCE);
> }
>
> Index: src/newlib/libc/machine/spu/printf.S
>
============================================================
=======
> --- src.orig/newlib/libc/machine/spu/printf.S
> +++ src/newlib/libc/machine/spu/printf.S
>  -33,6 +33,7 
> .text
> .align 4
> GLOBL printf
> + .type printf, function
> printf:
> stqd $0, 16($sp) /* save caller address */
> il $2, 1 /* number of fixed arguments */
>  -47,3 +48,4  printf:
> a $sp, $sp, $2
> lqd $0, 16($sp) /* load caller address */
> bi $0 /* return to caller */
> + .size printf, .-printf
> Index: src/newlib/libc/machine/spu/scanf.S
>
============================================================
=======
> --- src.orig/newlib/libc/machine/spu/scanf.S
> +++ src/newlib/libc/machine/spu/scanf.S
>  -33,6 +33,7 
> .text
> .align 4
> GLOBL scanf
> + .type scanf, function
> scanf:
> stqd $0, 16($sp) /* save caller address */
> il $2, 1 /* number of fixed arguments */
>  -47,3 +48,4  scanf:
> a $sp, $sp, $2
> lqd $0, 16($sp) /* load caller address */
> bi $0 /* return to caller */
> + .size scanf, .-scanf
> Index: src/newlib/libc/machine/spu/setjmp.S
>
============================================================
=======
> --- src.orig/newlib/libc/machine/spu/setjmp.S
> +++ src/newlib/libc/machine/spu/setjmp.S
>  -36,6 +36,7  Author: Andreas Neukoetter (ti95neuk de.
> .text
> .align 2
> .global setjmp
> + .type setjmp, function
> setjmp:
> stqd $80, 2*16($3)
> stqd $81, 3*16($3)
>  -97,6 +98,7  setjmp:
>
> setjmp_ret:
> bi $0
> + .size setjmp, .-setjmp
>
> /*
> int longjmp( jmp_buf env, int val );
>  -104,6 +106,7  setjmp_ret:
> .text
> .align 2
> .global longjmp
> + .type longjmp, function
> longjmp:
> lr $127, $1
>
>  -176,4 +179,5  longjmp:
>
> longjmp_ret:
> bi $0
> + .size longjmp, .-longjmp
>
> Index: src/newlib/libc/machine/spu/snprintf.S
>
============================================================
=======
> --- src.orig/newlib/libc/machine/spu/snprintf.S
> +++ src/newlib/libc/machine/spu/snprintf.S
>  -33,6 +33,7 
> .text
> .align 4
> GLOBL snprintf
> + .type snprintf, function
> snprintf:
> stqd $0, 16($sp) /* save caller address */
> il $2, 3 /* number of fixed arguments */
>  -47,3 +48,4  snprintf:
> a $sp, $sp, $2
> lqd $0, 16($sp) /* load caller address */
> bi $0 /* return to caller */
> + .size snprintf, .-snprintf
> Index: src/newlib/libc/machine/spu/sprintf.S
>
============================================================
=======
> --- src.orig/newlib/libc/machine/spu/sprintf.S
> +++ src/newlib/libc/machine/spu/sprintf.S
>  -33,6 +33,7 
> .text
> .align 4
> GLOBL sprintf
> + .type sprintf, function
> sprintf:
> stqd $0, 16($sp) /* save caller address */
> il $2, 2 /* number of fixed arguments */
>  -47,3 +48,4  sprintf:
> a $sp, $sp, $2
> lqd $0, 16($sp) /* load caller address */
> bi $0 /* return to caller */
> + .size sprintf, .-sprintf
> Index: src/newlib/libc/machine/spu/sscanf.S
>
============================================================
=======
> --- src.orig/newlib/libc/machine/spu/sscanf.S
> +++ src/newlib/libc/machine/spu/sscanf.S
>  -33,6 +33,7 
> .text
> .align 4
> GLOBL sscanf
> + .type sscanf, function
> sscanf:
> stqd $0, 16($sp) /* save caller address */
> il $2, 2 /* number of fixed arguments */
>  -47,3 +48,4  sscanf:
> a $sp, $sp, $2
> lqd $0, 16($sp) /* load caller address */
> bi $0 /* return to caller */
> + .size sscanf, .-sscanf
> Index: src/newlib/libc/machine/spu/stack_reg_va.S
>
============================================================
=======
> --- src.orig/newlib/libc/machine/spu/stack_reg_va.S
> +++ src/newlib/libc/machine/spu/stack_reg_va.S
>  -85,6 +85,7 
>
> .text
> .global __stack_reg_va
> + .type __stack_reg_va, function
>
> __stack_reg_va:
>
>  -164,3 +165,6  save_regs_2:
> ai ptr, ptr, -16
> brz tmp, save_regs_1 /* if (tmp == 0) jump */
> bi link /* finish to make va_list */
> +
> + .size __stack_reg_va, .-__stack_reg_va
> +
>
|
|
[1-2]
|
|