diff --git a/lib/libc/amd64/sys/vfork.S b/lib/libc/amd64/sys/vfork.S index 30d7fd1932b7..8ec99aeaad21 100644 --- a/lib/libc/amd64/sys/vfork.S +++ b/lib/libc/amd64/sys/vfork.S @@ -65,7 +65,7 @@ ENTRY(vfork) je 1f /* yes */ movl $0,%eax 1: - jmp %ecx + jmp *%ecx 2: pushl %ecx PIC_PROLOGUE diff --git a/lib/libc/i386/gen/alloca.S b/lib/libc/i386/gen/alloca.S index 4aa0e321b9e7..76108fe7f845 100644 --- a/lib/libc/i386/gen/alloca.S +++ b/lib/libc/i386/gen/alloca.S @@ -57,4 +57,4 @@ ENTRY(alloca) pushl 4(%ecx) pushl 0(%ecx) pushl %eax /* dummy to pop at callsite */ - jmp %edx /* "return" */ + jmp *%edx /* "return" */ diff --git a/lib/libc/i386/sys/Ovfork.S b/lib/libc/i386/sys/Ovfork.S index 30d7fd1932b7..8ec99aeaad21 100644 --- a/lib/libc/i386/sys/Ovfork.S +++ b/lib/libc/i386/sys/Ovfork.S @@ -65,7 +65,7 @@ ENTRY(vfork) je 1f /* yes */ movl $0,%eax 1: - jmp %ecx + jmp *%ecx 2: pushl %ecx PIC_PROLOGUE