All pastes #1018456 Raw Edit

j0rn

public c v1 · immutable
#1018456 ·published 2008-05-14 22:48 UTC
rendered paste body
/* * gcc -O1 -S hello.c * sed -e 's|.*\(\.ident\t".*"\).*|\t.ident\t""|' hello.s * gcc -nostdlib hello.s -o hello */#define __NR_exit       1#define __NR_write      4#define STDOUT_FILENO   1#define exit(code)      { __asm__ volatile ( "int $0x80\n" : : "eax" (__NR_exit), "ebx" ((long) (code))); }#define write(fd,buf,len)               \{                                       \        unsigned int result;            \        __asm__ volatile                \        (                               \                "int $0x80\n"           \                : "=eax" (result)       \                : "0" (__NR_write),     \                  "ebx" ((long) (fd)),  \                  "ecx" ((long) (buf)), \                  "edx" ((long) (len))  \                : "memory"              \        );                              \        return result;                  \}int _start (void) {        char buffer[] = "Hello world !\n", *ptr = buffer;        while (*++ptr);        write(STDOUT_FILENO, buffer, ptr - buffer);        exit(0);}