mirror of the now-defunct rocklinux.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 lines
1.5 KiB

  1. Submitted By: Joe Ciccone <jciccone@linuxfromscratch.org>
  2. Date: 2007-05-19
  3. Initial Package Version: 2.6
  4. Origin: Joe Ciccone
  5. Upstream Status: Unknown
  6. Description: Fixes a build issue with alpha on some processors. The
  7. instructions being modified are specific to ev56/ev6.
  8. diff -Naur glibc-2.6.orig/sysdeps/unix/sysv/linux/alpha/ioperm.c glibc-2.6/sysdeps/unix/sysv/linux/alpha/ioperm.c
  9. --- glibc-2.6.orig/sysdeps/unix/sysv/linux/alpha/ioperm.c 2007-05-07 15:57:20.000000000 -0700
  10. +++ glibc-2.6/sysdeps/unix/sysv/linux/alpha/ioperm.c 2007-05-19 13:29:49.000000000 -0700
  11. @@ -178,13 +178,13 @@
  12. static inline void
  13. stb_mb(unsigned char val, unsigned long addr)
  14. {
  15. - __asm__("stb %1,%0; mb" : "=m"(*(vucp)addr) : "r"(val));
  16. + __asm__(".arch ev6; stb %1,%0; mb" : "=m"(*(vucp)addr) : "r"(val));
  17. }
  18. static inline void
  19. stw_mb(unsigned short val, unsigned long addr)
  20. {
  21. - __asm__("stw %1,%0; mb" : "=m"(*(vusp)addr) : "r"(val));
  22. + __asm__(".arch ev6; stw %1,%0; mb" : "=m"(*(vusp)addr) : "r"(val));
  23. }
  24. static inline void
  25. @@ -356,7 +356,7 @@
  26. unsigned long int addr = dense_port_to_cpu_addr (port);
  27. unsigned char r;
  28. - __asm__ ("ldbu %0,%1" : "=r"(r) : "m"(*(vucp)addr));
  29. + __asm__ (".arch ev6; ldbu %0,%1" : "=r"(r) : "m"(*(vucp)addr));
  30. return r;
  31. }
  32. @@ -366,7 +366,7 @@
  33. unsigned long int addr = dense_port_to_cpu_addr (port);
  34. unsigned short r;
  35. - __asm__ ("ldwu %0,%1" : "=r"(r) : "m"(*(vusp)addr));
  36. + __asm__ (".arch ev6; ldwu %0,%1" : "=r"(r) : "m"(*(vusp)addr));
  37. return r;
  38. }