Have you seen such asm code?
I read the source code in glibc, and some codes in sysdeps/ia64/dl_machine.h frustrates me. In this file I saw the following codes:
#define RTLD_START asm ( \
".text\n" \
" .global _start#\n" \
" .proc _start#\n" \
"_start:\n" \
"0: { .mii\n" \
" .prologue\n" \
" .save rp, r0\n" \
" .body\n" \
" .prologue\n" \
" .save ar.pfs, r32\n" \
" alloc loc0 = ar.pfs, 0, 3, 4, 0\n" \
" .body\n" \
" mov r2 = ip\n" \
" addl r3 = @gprel(0b), r0\n" \
" ;;\n" \
" }\n"
................................................
I can't catch the point of the codes. I have never seen such asm codes before,whether intel style or at&t style. Could you please give me some direction?
|