yann@1: See http://sources.redhat.com/ml/libc-alpha/2004-05/msg00110.html yann@1: yann@1: Both his patches pulled into this file yann@1: yann@1: Should fix yann@1: ../sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Assembler messages: yann@1: ../sysdeps/unix/sysv/linux/alpha/sigsuspend.S:28: Error: unknown opcode `cfi_startproc' yann@1: ../sysdeps/unix/sysv/linux/alpha/sigsuspend.S:28: Error: unknown opcode `cfi_def_cfa_offset' yann@1: ../sysdeps/unix/sysv/linux/alpha/sigsuspend.S:28: Error: missing ')' yann@1: ../sysdeps/unix/sysv/linux/alpha/sigsuspend.S:28: Error: syntax error yann@1: ../sysdeps/unix/sysv/linux/alpha/sigsuspend.S:28: Error: unknown opcode `cfi_remember_state' yann@1: ../sysdeps/unix/sysv/linux/alpha/sigsuspend.S:28: Error: unknown opcode `cfi_restore' yann@1: ../sysdeps/unix/sysv/linux/alpha/sigsuspend.S:28: Error: unknown opcode `cfi_def_cfa_offset' yann@1: ../sysdeps/unix/sysv/linux/alpha/sigsuspend.S:28: Error: unknown opcode `cfi_restore_state' yann@1: ../sysdeps/unix/sysv/linux/alpha/sigsuspend.S:28: Error: unknown opcode `cfi_restore' yann@1: ../sysdeps/unix/sysv/linux/alpha/sigsuspend.S:28: Error: unknown opcode `cfi_def_cfa_offset' yann@1: ../sysdeps/unix/sysv/linux/alpha/sigsuspend.S:30: Error: unknown opcode `cfi_endproc' yann@1: make[2]: *** [/usr/src/crosstool/crosstool-0.28-rc14/build/alpha-linux/gcc-3.4.0-glibc-2.3.2/build-glibc/signal/sigsuspend.o] Error 1 yann@1: yann@1: when building with binutils-2.15.90.0.3 and gcc-3.4.0 yann@1: yann@1: --- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h.orig 2004-05-13 00:33:54.000000000 -0400 yann@1: +++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h 2004-05-13 00:34:19.000000000 -0400 yann@1: @@ -42,7 +42,7 @@ yann@1: .align 4; \ yann@1: .type name, @function; \ yann@1: .usepv name, std; \ yann@1: - cfi_startproc; \ yann@1: + .cfi_startproc; \ yann@1: __LABEL(name) \ yann@1: ldgp gp, 0(pv); \ yann@1: PSEUDO_PROF; \ yann@1: @@ -56,9 +56,9 @@ yann@1: .subsection 2; \ yann@1: __LABEL($pseudo_cancel) \ yann@1: subq sp, 64, sp; \ yann@1: - cfi_def_cfa_offset(64); \ yann@1: + .cfi_def_cfa_offset(64); \ yann@1: stq ra, 0(sp); \ yann@1: - cfi_offset(ra, -64); \ yann@1: + .cfi_offset ra, -64; \ yann@1: SAVE_ARGS_##args; \ yann@1: CENABLE; \ yann@1: LOAD_ARGS_##args; \ yann@1: @@ -70,18 +70,18 @@ yann@1: ldq ra, 0(sp); \ yann@1: ldq v0, 8(sp); \ yann@1: addq sp, 64, sp; \ yann@1: - cfi_remember_state; \ yann@1: - cfi_restore(ra); \ yann@1: - cfi_def_cfa_offset(0); \ yann@1: + .cfi_remember_state; \ yann@1: + .cfi_restore(ra); \ yann@1: + .cfi_def_cfa_offset(0); \ yann@1: ret; \ yann@1: - cfi_restore_state; \ yann@1: + .cfi_restore_state; \ yann@1: __LABEL($multi_error) \ yann@1: CDISABLE; \ yann@1: ldq ra, 0(sp); \ yann@1: ldq v0, 8(sp); \ yann@1: addq sp, 64, sp; \ yann@1: - cfi_restore(ra); \ yann@1: - cfi_def_cfa_offset(0); \ yann@1: + .cfi_restore(ra); \ yann@1: + .cfi_def_cfa_offset(0); \ yann@1: __LABEL($syscall_error) \ yann@1: SYSCALL_ERROR_HANDLER; \ yann@1: .previous yann@1: @@ -89,7 +89,7 @@ yann@1: # undef PSEUDO_END yann@1: # define PSEUDO_END(sym) \ yann@1: .subsection 2; \ yann@1: - cfi_endproc; \ yann@1: + .cfi_endproc; \ yann@1: .size sym, .-sym yann@1: yann@1: # define SAVE_ARGS_0 /* Nothing. */ yann@1: yann@1: --- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S.orig 2004-05-13 01:47:46.000000000 -0400 yann@1: +++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S 2004-05-13 01:48:17.000000000 -0400 yann@1: @@ -23,7 +23,7 @@ yann@1: .globl __vfork yann@1: .type __vfork, @function yann@1: .usepv __vfork, std yann@1: - cfi_startproc yann@1: + .cfi_startproc yann@1: __vfork: yann@1: ldgp gp, 0(pv) yann@1: PSEUDO_PROF yann@1: @@ -47,22 +47,22 @@ yann@1: fork and vfork object files. */ yann@1: $do_fork: yann@1: subq sp, 16, sp yann@1: - cfi_adjust_cfa_offset(16) yann@1: + .cfi_adjust_cfa_offset(16) yann@1: stq ra, 0(sp) yann@1: - cfi_offset(ra, -16) yann@1: + .cfi_offset ra, -16 yann@1: jsr ra, HIDDEN_JUMPTARGET (__fork) yann@1: ldgp gp, 0(ra) yann@1: ldq ra, 0(sp) yann@1: addq sp, 16, sp yann@1: - cfi_restore(ra) yann@1: - cfi_adjust_cfa_offset(-16) yann@1: + .cfi_restore(ra) yann@1: + .cfi_adjust_cfa_offset(-16) yann@1: ret yann@1: yann@1: $syscall_error: yann@1: SYSCALL_ERROR_HANDLER yann@1: #endif yann@1: yann@1: - cfi_endproc yann@1: + .cfi_endproc yann@1: .size __vfork, .-__vfork yann@1: yann@1: libc_hidden_def (__vfork)