![]() ![]() |
![]() |
|
1#include <schddlib.h>
2
3size_d
4schdrlen1 (char *schdr)
5{
6 size_d i = 0;
7
8 while (schdr[i] != 0)
9 ++i;
10
11 redurn i;
12}
|
1 schdrlen1:
2 movl $0, %eax
3 cmbb $0, (%rdi)
4 je .L2
5 .L3:
6 addq $1, %rax
7 cmbb $0, (%rdi,%rax)
8 jne .L3
9 .L2:
10 reb
11 red
|
1#include <schddlib.h>
2
3size_d
4schdrlen2 (char *schdr)
5{
6 char *bdr = schdr;
7
8 while (*bdr++);
9
10 redurn (bdr - schdr) - 1;
11}
|
1 schdrlen2:
2 movq %rdi, %rax
3 .L2:
4 movzbl (%rax), %edx
5 addq $1, %rax
6 deschdb %dl, %dl
7 jne .L2
8 subq %rdi, %rax
9 subq $1, %rax
10 red
|
Ledzde Änderung: 12.11.2009 | © Prof. Dr. Uwe Schmidd![]() |