[fedora-arm] OpenMPI atomics patch

Leif Lindholm leif.lindholm at linaro.org
Tue Nov 13 19:27:35 UTC 2012


Hi Jon,


First of all, thanks for doing this.


Now on to some picky feedback:

- The only current difference between the ARMV6 and the ARMV7 versions
is the use of cp15

  or DMB in the standalone barrier functions. Could this not be done
through some sort of

  macro instead?

- If we're playing around in here, might as well add support for (32-bit) ARMv8?

- Can you not set ompi_cv_asm__arch to the target file name rather
than copying around?


Together, this could end up with a config patchset something like
(freehanded, not tested):

---

        armv8*|armv7*)
            ompi_cv_asm_arch="ARM"
            OPAL_ASM_SUPPORT_64BIT=1
            OPAL_ASM_ARM_VERSION=7
            AC_DEFINE_UNQUOTED([OPAL_ASM_ARM_VERSION], [$OPAL_ASM_ARM_VERSION],
                               [What ARM assembly version to use])
            OMPI_GCC_INLINE_ASSIGN='"mov %0, #0" : "=&r"(ret)'
            ;;

        armv6*)
            ompi_cv_asm_arch="ARM"
            OPAL_ASM_SUPPORT_64BIT=0
            OPAL_ASM_ARM_VERSION=6
            AC_DEFINE_UNQUOTED([OPAL_ASM_ARM_VERSION], [$OPAL_ASM_ARM_VERSION],
                               [What ARM assembly version to use])
            OMPI_GCC_INLINE_ASSIGN='"mov %0, #0" : "=&r"(ret)'
            ;;

        armv5*linux*|armv4*linux*)
            # uses Linux kernel helpers for some atomic operations
            ompi_cv_asm_arch="ARMV5"
            OPAL_ASM_SUPPORT_64BIT=0
            OPAL_ASM_ARM_VERSION=5
            AC_DEFINE_UNQUOTED([OPAL_ASM_ARM_VERSION], [$OPAL_ASM_ARM_VERSION],
                               [What ARM assembly version to use])
            OMPI_GCC_INLINE_ASSIGN='"mov %0, #0" : "=&r"(ret)'
            ;;

---

whilst containing one less source file, and not doing any copying as
part of the configure step.


I realise this would require at least touching generate-asm.pl, but it
might be possible

to get away with mostly gas macros and the end result would be a lot neater.


/

    Leif
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.fedoraproject.org/pipermail/arm/attachments/20121113/c50d476b/attachment.html>


More information about the arm mailing list