2
1

0002-fix-sparc-compile.patch 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. The gcc predefines for Linux are __sparc_v8__/__sparc_v7__
  2. Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
  3. diff -Nur postgresql-9.4.4.orig/src/include/storage/s_lock.h postgresql-9.4.4/src/include/storage/s_lock.h
  4. --- postgresql-9.4.4.orig/src/include/storage/s_lock.h 2015-06-09 21:29:38.000000000 +0200
  5. +++ postgresql-9.4.4/src/include/storage/s_lock.h 2015-08-09 19:57:06.000000000 +0200
  6. @@ -420,12 +420,12 @@
  7. : "=r"(_res), "+m"(*lock)
  8. : "r"(lock)
  9. : "memory");
  10. -#if defined(__sparcv7)
  11. +#if defined(__sparcv7) || defined(__sparc_v7__)
  12. /*
  13. * No stbar or membar available, luckily no actually produced hardware
  14. * requires a barrier.
  15. */
  16. -#elif defined(__sparcv8)
  17. +#elif defined(__sparcv8) || defined(__sparc_v8__)
  18. /* stbar is available (and required for both PSO, RMO), membar isn't */
  19. __asm__ __volatile__ ("stbar \n":::"memory");
  20. #else
  21. @@ -438,13 +438,13 @@
  22. return (int) _res;
  23. }
  24. -#if defined(__sparcv7)
  25. +#if defined(__sparcv7) || defined(__sparc_v7__)
  26. /*
  27. * No stbar or membar available, luckily no actually produced hardware
  28. * requires a barrier.
  29. */
  30. #define S_UNLOCK(lock) (*((volatile slock_t *) (lock)) = 0)
  31. -#elif defined(__sparcv8)
  32. +#elif defined(__sparcv8) || defined(__sparc_v8__)
  33. /* stbar is available (and required for both PSO, RMO), membar isn't */
  34. #define S_UNLOCK(lock) \
  35. do \