Update to 1.6.4
Drop f90sover and arm-atomics patch fixed upstream
This commit is contained in:
parent
b44370fe2d
commit
d16b318c9d
1
.gitignore
vendored
1
.gitignore
vendored
@ -7,3 +7,4 @@ openmpi-1.4.1-RH.tar.bz2
|
|||||||
/openmpi-1.6.1-clean.tar.xz
|
/openmpi-1.6.1-clean.tar.xz
|
||||||
/openmpi-1.6.2-clean.tar.xz
|
/openmpi-1.6.2-clean.tar.xz
|
||||||
/openmpi-1.6.3-clean.tar.xz
|
/openmpi-1.6.3-clean.tar.xz
|
||||||
|
/openmpi-1.6.4-clean.tar.bz2
|
||||||
|
@ -1,641 +0,0 @@
|
|||||||
diff -urNp openmpi-1.6.3_orig/opal/asm/base/ARM.asm openmpi-1.6.3/opal/asm/base/ARM.asm
|
|
||||||
--- openmpi-1.6.3_orig/opal/asm/base/ARM.asm 2012-04-03 10:29:44.000000000 -0400
|
|
||||||
+++ openmpi-1.6.3/opal/asm/base/ARM.asm 1969-12-31 19:00:00.000000000 -0500
|
|
||||||
@@ -1,153 +0,0 @@
|
|
||||||
-START_FILE
|
|
||||||
- TEXT
|
|
||||||
-
|
|
||||||
- ALIGN(4)
|
|
||||||
-START_FUNC(opal_atomic_mb)
|
|
||||||
- dmb
|
|
||||||
- bx lr
|
|
||||||
-END_FUNC(opal_atomic_mb)
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-START_FUNC(opal_atomic_rmb)
|
|
||||||
- dmb
|
|
||||||
- bx lr
|
|
||||||
-END_FUNC(opal_atomic_rmb)
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-START_FUNC(opal_atomic_wmb)
|
|
||||||
- dmb
|
|
||||||
- bx lr
|
|
||||||
-END_FUNC(opal_atomic_wmb)
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-START_FUNC(opal_atomic_cmpset_32)
|
|
||||||
- LSYM(1)
|
|
||||||
- ldrex r3, [r0]
|
|
||||||
- cmp r1, r3
|
|
||||||
- bne REFLSYM(2)
|
|
||||||
- strex r12, r2, [r0]
|
|
||||||
- cmp r12, #0
|
|
||||||
- bne REFLSYM(1)
|
|
||||||
- mov r0, #1
|
|
||||||
- LSYM(2)
|
|
||||||
- movne r0, #0
|
|
||||||
- bx lr
|
|
||||||
-END_FUNC(opal_atomic_cmpset_32)
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-START_FUNC(opal_atomic_cmpset_acq_32)
|
|
||||||
- LSYM(3)
|
|
||||||
- ldrex r3, [r0]
|
|
||||||
- cmp r1, r3
|
|
||||||
- bne REFLSYM(4)
|
|
||||||
- strex r12, r2, [r0]
|
|
||||||
- cmp r12, #0
|
|
||||||
- bne REFLSYM(3)
|
|
||||||
- dmb
|
|
||||||
- mov r0, #1
|
|
||||||
- LSYM(4)
|
|
||||||
- movne r0, #0
|
|
||||||
- bx lr
|
|
||||||
-END_FUNC(opal_atomic_cmpset_acq_32)
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-START_FUNC(opal_atomic_cmpset_rel_32)
|
|
||||||
- LSYM(5)
|
|
||||||
- ldrex r3, [r0]
|
|
||||||
- cmp r1, r3
|
|
||||||
- bne REFLSYM(6)
|
|
||||||
- dmb
|
|
||||||
- strex r12, r2, [r0]
|
|
||||||
- cmp r12, #0
|
|
||||||
- bne REFLSYM(4)
|
|
||||||
- mov r0, #1
|
|
||||||
- LSYM(6)
|
|
||||||
- movne r0, #0
|
|
||||||
- bx lr
|
|
||||||
-END_FUNC(opal_atomic_cmpset_rel_32)
|
|
||||||
-
|
|
||||||
-#START_64BIT
|
|
||||||
-START_FUNC(opal_atomic_cmpset_64)
|
|
||||||
- push {r4-r7}
|
|
||||||
- ldrd r6, r7, [sp, #16]
|
|
||||||
- LSYM(7)
|
|
||||||
- ldrexd r4, r5, [r0]
|
|
||||||
- cmp r4, r2
|
|
||||||
- it eq
|
|
||||||
- cmpeq r5, r3
|
|
||||||
- bne REFLSYM(8)
|
|
||||||
- strexd r1, r6, r7, [r0]
|
|
||||||
- cmp r1, #0
|
|
||||||
- bne REFLSYM(7)
|
|
||||||
- mov r0, #1
|
|
||||||
- LSYM(8)
|
|
||||||
- movne r0, #0
|
|
||||||
- pop {r4-r7}
|
|
||||||
- bx lr
|
|
||||||
-END_FUNC(opal_atomic_cmpset_64)
|
|
||||||
-
|
|
||||||
-START_FUNC(opal_atomic_cmpset_acq_64)
|
|
||||||
- push {r4-r7}
|
|
||||||
- ldrd r6, r7, [sp, #16]
|
|
||||||
- LSYM(9)
|
|
||||||
- ldrexd r4, r5, [r0]
|
|
||||||
- cmp r4, r2
|
|
||||||
- it eq
|
|
||||||
- cmpeq r5, r3
|
|
||||||
- bne REFLSYM(10)
|
|
||||||
- strexd r1, r6, r7, [r0]
|
|
||||||
- cmp r1, #0
|
|
||||||
- bne REFLSYM(9)
|
|
||||||
- dmb
|
|
||||||
- mov r0, #1
|
|
||||||
- LSYM(10)
|
|
||||||
- movne r0, #0
|
|
||||||
- pop {r4-r7}
|
|
||||||
- bx lr
|
|
||||||
-END_FUNC(opal_atomic_cmpset_acq_64)
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-START_FUNC(opal_atomic_cmpset_rel_64)
|
|
||||||
- push {r4-r7}
|
|
||||||
- ldrd r6, r7, [sp, #16]
|
|
||||||
- LSYM(11)
|
|
||||||
- ldrexd r4, r5, [r0]
|
|
||||||
- cmp r4, r2
|
|
||||||
- it eq
|
|
||||||
- cmpeq r5, r3
|
|
||||||
- bne REFLSYM(12)
|
|
||||||
- dmb
|
|
||||||
- strexd r1, r6, r7, [r0]
|
|
||||||
- cmp r1, #0
|
|
||||||
- bne REFLSYM(11)
|
|
||||||
- mov r0, #1
|
|
||||||
- LSYM(12)
|
|
||||||
- movne r0, #0
|
|
||||||
- pop {r4-r7}
|
|
||||||
- bx lr
|
|
||||||
-END_FUNC(opal_atomic_cmpset_rel_64)
|
|
||||||
-#END_64BIT
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-START_FUNC(opal_atomic_add_32)
|
|
||||||
- LSYM(13)
|
|
||||||
- ldrex r2, [r0]
|
|
||||||
- add r2, r2, r1
|
|
||||||
- strex r3, r2, [r0]
|
|
||||||
- cmp r3, #0
|
|
||||||
- bne REFLSYM(13)
|
|
||||||
- mov r0, r2
|
|
||||||
- bx lr
|
|
||||||
-END_FUNC(opal_atomic_add_32)
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-START_FUNC(opal_atomic_sub_32)
|
|
||||||
- LSYM(14)
|
|
||||||
- ldrex r2, [r0]
|
|
||||||
- sub r2, r2, r1
|
|
||||||
- strex r3, r2, [r0]
|
|
||||||
- cmp r3, #0
|
|
||||||
- bne REFLSYM(14)
|
|
||||||
- mov r0, r2
|
|
||||||
- bx lr
|
|
||||||
-END_FUNC(opal_atomic_sub_32)
|
|
||||||
diff -urNp openmpi-1.6.3_orig/opal/asm/base/ARMV5.asm openmpi-1.6.3/opal/asm/base/ARMV5.asm
|
|
||||||
--- openmpi-1.6.3_orig/opal/asm/base/ARMV5.asm 1969-12-31 19:00:00.000000000 -0500
|
|
||||||
+++ openmpi-1.6.3/opal/asm/base/ARMV5.asm 2012-11-13 14:43:17.018685692 -0500
|
|
||||||
@@ -0,0 +1,109 @@
|
|
||||||
+START_FILE
|
|
||||||
+ TEXT
|
|
||||||
+
|
|
||||||
+ ALIGN(4)
|
|
||||||
+START_FUNC(opal_atomic_mb)
|
|
||||||
+ mcr p15, 0, r0, c7, c10, 5
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_mb)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_rmb)
|
|
||||||
+ mcr p15, 0, r0, c7, c10, 5
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_rmb)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_wmb)
|
|
||||||
+ mcr p15, 0, r0, c7, c10, 5
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_wmb)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_cmpset_32)
|
|
||||||
+ push {r4, lr}
|
|
||||||
+ mov r3, r0
|
|
||||||
+ mov r0, r1
|
|
||||||
+ mov r1, r2
|
|
||||||
+ mov r2, r3
|
|
||||||
+ ldr r3, REFLSYM(1)
|
|
||||||
+ blx r3
|
|
||||||
+ movcc r0, #0
|
|
||||||
+ movcs r0, #1
|
|
||||||
+ pop {r4, lr}
|
|
||||||
+ bx lr
|
|
||||||
+ .align 2
|
|
||||||
+ LSYM(1)
|
|
||||||
+ .word 0xffff0fc0
|
|
||||||
+END_FUNC(opal_atomic_cmpset_32)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_cmpset_acq_32)
|
|
||||||
+ push {r4, lr}
|
|
||||||
+ mov r3, r0
|
|
||||||
+ mov r0, r1
|
|
||||||
+ mov r1, r2
|
|
||||||
+ mov r2, r3
|
|
||||||
+ ldr r3, REFLSYM(2)
|
|
||||||
+ blx r3
|
|
||||||
+ movcc r0, #0
|
|
||||||
+ movcs r0, #1
|
|
||||||
+ pop {r4, lr}
|
|
||||||
+ bx lr
|
|
||||||
+ .align 2
|
|
||||||
+ LSYM(2)
|
|
||||||
+ .word 0xffff0fc0
|
|
||||||
+END_FUNC(opal_atomic_cmpset_acq_32)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_cmpset_rel_32)
|
|
||||||
+ push {r4, lr}
|
|
||||||
+ mov r3, r0
|
|
||||||
+ mov r0, r1
|
|
||||||
+ mov r1, r2
|
|
||||||
+ mov r2, r3
|
|
||||||
+ ldr r3, REFLSYM(3)
|
|
||||||
+ blx r3
|
|
||||||
+ movcc r0, #0
|
|
||||||
+ movcs r0, #1
|
|
||||||
+ pop {r4, lr}
|
|
||||||
+ bx lr
|
|
||||||
+ .align 2
|
|
||||||
+ LSYM(3)
|
|
||||||
+ .word 0xffff0fc0
|
|
||||||
+END_FUNC(opal_atomic_cmpset_rel_32)
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_add_32)
|
|
||||||
+ push {r4, lr}
|
|
||||||
+ mov r4, r1
|
|
||||||
+ mov r2, r0
|
|
||||||
+ LSYM(4)
|
|
||||||
+ ldr r0, [r2]
|
|
||||||
+ ldr r3, REFLSYM(5)
|
|
||||||
+ add r1, r0, r4
|
|
||||||
+ blx r3
|
|
||||||
+ bcc REFLSYM(4)
|
|
||||||
+ pop {r4, lr}
|
|
||||||
+ bx lr
|
|
||||||
+ .align 2
|
|
||||||
+ LSYM(5)
|
|
||||||
+ .word 0xffff0fc0
|
|
||||||
+END_FUNC(opal_atomic_add_32)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_sub_32)
|
|
||||||
+ push {r4, lr}
|
|
||||||
+ mov r4, r1
|
|
||||||
+ mov r2, r0
|
|
||||||
+ LSYM(6)
|
|
||||||
+ ldr r0, [r2]
|
|
||||||
+ ldr r3, REFLSYM(7)
|
|
||||||
+ sub r1, r0, r4
|
|
||||||
+ blx r3
|
|
||||||
+ bcc REFLSYM(6)
|
|
||||||
+ pop {r4, lr}
|
|
||||||
+ bx lr
|
|
||||||
+ .align 2
|
|
||||||
+ LSYM(7)
|
|
||||||
+ .word 0xffff0fc0
|
|
||||||
+END_FUNC(opal_atomic_sub_32)
|
|
||||||
diff -urNp openmpi-1.6.3_orig/opal/asm/base/ARMV6.asm openmpi-1.6.3/opal/asm/base/ARMV6.asm
|
|
||||||
--- openmpi-1.6.3_orig/opal/asm/base/ARMV6.asm 1969-12-31 19:00:00.000000000 -0500
|
|
||||||
+++ openmpi-1.6.3/opal/asm/base/ARMV6.asm 2012-11-10 01:14:33.560297218 -0500
|
|
||||||
@@ -0,0 +1,153 @@
|
|
||||||
+START_FILE
|
|
||||||
+ TEXT
|
|
||||||
+
|
|
||||||
+ ALIGN(4)
|
|
||||||
+START_FUNC(opal_atomic_mb)
|
|
||||||
+ mcr p15, 0, r0, c7, c10, 5
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_mb)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_rmb)
|
|
||||||
+ mcr p15, 0, r0, c7, c10, 5
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_rmb)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_wmb)
|
|
||||||
+ mcr p15, 0, r0, c7, c10, 5
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_wmb)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_cmpset_32)
|
|
||||||
+ LSYM(1)
|
|
||||||
+ ldrex r3, [r0]
|
|
||||||
+ cmp r1, r3
|
|
||||||
+ bne REFLSYM(2)
|
|
||||||
+ strex r12, r2, [r0]
|
|
||||||
+ cmp r12, #0
|
|
||||||
+ bne REFLSYM(1)
|
|
||||||
+ mov r0, #1
|
|
||||||
+ LSYM(2)
|
|
||||||
+ movne r0, #0
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_cmpset_32)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_cmpset_acq_32)
|
|
||||||
+ LSYM(3)
|
|
||||||
+ ldrex r3, [r0]
|
|
||||||
+ cmp r1, r3
|
|
||||||
+ bne REFLSYM(4)
|
|
||||||
+ strex r12, r2, [r0]
|
|
||||||
+ cmp r12, #0
|
|
||||||
+ bne REFLSYM(3)
|
|
||||||
+ dmb
|
|
||||||
+ mov r0, #1
|
|
||||||
+ LSYM(4)
|
|
||||||
+ movne r0, #0
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_cmpset_acq_32)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_cmpset_rel_32)
|
|
||||||
+ LSYM(5)
|
|
||||||
+ ldrex r3, [r0]
|
|
||||||
+ cmp r1, r3
|
|
||||||
+ bne REFLSYM(6)
|
|
||||||
+ dmb
|
|
||||||
+ strex r12, r2, [r0]
|
|
||||||
+ cmp r12, #0
|
|
||||||
+ bne REFLSYM(4)
|
|
||||||
+ mov r0, #1
|
|
||||||
+ LSYM(6)
|
|
||||||
+ movne r0, #0
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_cmpset_rel_32)
|
|
||||||
+
|
|
||||||
+#START_64BIT
|
|
||||||
+START_FUNC(opal_atomic_cmpset_64)
|
|
||||||
+ push {r4-r7}
|
|
||||||
+ ldrd r6, r7, [sp, #16]
|
|
||||||
+ LSYM(7)
|
|
||||||
+ ldrexd r4, r5, [r0]
|
|
||||||
+ cmp r4, r2
|
|
||||||
+ it eq
|
|
||||||
+ cmpeq r5, r3
|
|
||||||
+ bne REFLSYM(8)
|
|
||||||
+ strexd r1, r6, r7, [r0]
|
|
||||||
+ cmp r1, #0
|
|
||||||
+ bne REFLSYM(7)
|
|
||||||
+ mov r0, #1
|
|
||||||
+ LSYM(8)
|
|
||||||
+ movne r0, #0
|
|
||||||
+ pop {r4-r7}
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_cmpset_64)
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_cmpset_acq_64)
|
|
||||||
+ push {r4-r7}
|
|
||||||
+ ldrd r6, r7, [sp, #16]
|
|
||||||
+ LSYM(9)
|
|
||||||
+ ldrexd r4, r5, [r0]
|
|
||||||
+ cmp r4, r2
|
|
||||||
+ it eq
|
|
||||||
+ cmpeq r5, r3
|
|
||||||
+ bne REFLSYM(10)
|
|
||||||
+ strexd r1, r6, r7, [r0]
|
|
||||||
+ cmp r1, #0
|
|
||||||
+ bne REFLSYM(9)
|
|
||||||
+ dmb
|
|
||||||
+ mov r0, #1
|
|
||||||
+ LSYM(10)
|
|
||||||
+ movne r0, #0
|
|
||||||
+ pop {r4-r7}
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_cmpset_acq_64)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_cmpset_rel_64)
|
|
||||||
+ push {r4-r7}
|
|
||||||
+ ldrd r6, r7, [sp, #16]
|
|
||||||
+ LSYM(11)
|
|
||||||
+ ldrexd r4, r5, [r0]
|
|
||||||
+ cmp r4, r2
|
|
||||||
+ it eq
|
|
||||||
+ cmpeq r5, r3
|
|
||||||
+ bne REFLSYM(12)
|
|
||||||
+ dmb
|
|
||||||
+ strexd r1, r6, r7, [r0]
|
|
||||||
+ cmp r1, #0
|
|
||||||
+ bne REFLSYM(11)
|
|
||||||
+ mov r0, #1
|
|
||||||
+ LSYM(12)
|
|
||||||
+ movne r0, #0
|
|
||||||
+ pop {r4-r7}
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_cmpset_rel_64)
|
|
||||||
+#END_64BIT
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_add_32)
|
|
||||||
+ LSYM(13)
|
|
||||||
+ ldrex r2, [r0]
|
|
||||||
+ add r2, r2, r1
|
|
||||||
+ strex r3, r2, [r0]
|
|
||||||
+ cmp r3, #0
|
|
||||||
+ bne REFLSYM(13)
|
|
||||||
+ mov r0, r2
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_add_32)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_sub_32)
|
|
||||||
+ LSYM(14)
|
|
||||||
+ ldrex r2, [r0]
|
|
||||||
+ sub r2, r2, r1
|
|
||||||
+ strex r3, r2, [r0]
|
|
||||||
+ cmp r3, #0
|
|
||||||
+ bne REFLSYM(14)
|
|
||||||
+ mov r0, r2
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_sub_32)
|
|
||||||
diff -urNp openmpi-1.6.3_orig/opal/asm/base/ARMV7.asm openmpi-1.6.3/opal/asm/base/ARMV7.asm
|
|
||||||
--- openmpi-1.6.3_orig/opal/asm/base/ARMV7.asm 1969-12-31 19:00:00.000000000 -0500
|
|
||||||
+++ openmpi-1.6.3/opal/asm/base/ARMV7.asm 2012-04-03 10:29:44.000000000 -0400
|
|
||||||
@@ -0,0 +1,153 @@
|
|
||||||
+START_FILE
|
|
||||||
+ TEXT
|
|
||||||
+
|
|
||||||
+ ALIGN(4)
|
|
||||||
+START_FUNC(opal_atomic_mb)
|
|
||||||
+ dmb
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_mb)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_rmb)
|
|
||||||
+ dmb
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_rmb)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_wmb)
|
|
||||||
+ dmb
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_wmb)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_cmpset_32)
|
|
||||||
+ LSYM(1)
|
|
||||||
+ ldrex r3, [r0]
|
|
||||||
+ cmp r1, r3
|
|
||||||
+ bne REFLSYM(2)
|
|
||||||
+ strex r12, r2, [r0]
|
|
||||||
+ cmp r12, #0
|
|
||||||
+ bne REFLSYM(1)
|
|
||||||
+ mov r0, #1
|
|
||||||
+ LSYM(2)
|
|
||||||
+ movne r0, #0
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_cmpset_32)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_cmpset_acq_32)
|
|
||||||
+ LSYM(3)
|
|
||||||
+ ldrex r3, [r0]
|
|
||||||
+ cmp r1, r3
|
|
||||||
+ bne REFLSYM(4)
|
|
||||||
+ strex r12, r2, [r0]
|
|
||||||
+ cmp r12, #0
|
|
||||||
+ bne REFLSYM(3)
|
|
||||||
+ dmb
|
|
||||||
+ mov r0, #1
|
|
||||||
+ LSYM(4)
|
|
||||||
+ movne r0, #0
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_cmpset_acq_32)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_cmpset_rel_32)
|
|
||||||
+ LSYM(5)
|
|
||||||
+ ldrex r3, [r0]
|
|
||||||
+ cmp r1, r3
|
|
||||||
+ bne REFLSYM(6)
|
|
||||||
+ dmb
|
|
||||||
+ strex r12, r2, [r0]
|
|
||||||
+ cmp r12, #0
|
|
||||||
+ bne REFLSYM(4)
|
|
||||||
+ mov r0, #1
|
|
||||||
+ LSYM(6)
|
|
||||||
+ movne r0, #0
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_cmpset_rel_32)
|
|
||||||
+
|
|
||||||
+#START_64BIT
|
|
||||||
+START_FUNC(opal_atomic_cmpset_64)
|
|
||||||
+ push {r4-r7}
|
|
||||||
+ ldrd r6, r7, [sp, #16]
|
|
||||||
+ LSYM(7)
|
|
||||||
+ ldrexd r4, r5, [r0]
|
|
||||||
+ cmp r4, r2
|
|
||||||
+ it eq
|
|
||||||
+ cmpeq r5, r3
|
|
||||||
+ bne REFLSYM(8)
|
|
||||||
+ strexd r1, r6, r7, [r0]
|
|
||||||
+ cmp r1, #0
|
|
||||||
+ bne REFLSYM(7)
|
|
||||||
+ mov r0, #1
|
|
||||||
+ LSYM(8)
|
|
||||||
+ movne r0, #0
|
|
||||||
+ pop {r4-r7}
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_cmpset_64)
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_cmpset_acq_64)
|
|
||||||
+ push {r4-r7}
|
|
||||||
+ ldrd r6, r7, [sp, #16]
|
|
||||||
+ LSYM(9)
|
|
||||||
+ ldrexd r4, r5, [r0]
|
|
||||||
+ cmp r4, r2
|
|
||||||
+ it eq
|
|
||||||
+ cmpeq r5, r3
|
|
||||||
+ bne REFLSYM(10)
|
|
||||||
+ strexd r1, r6, r7, [r0]
|
|
||||||
+ cmp r1, #0
|
|
||||||
+ bne REFLSYM(9)
|
|
||||||
+ dmb
|
|
||||||
+ mov r0, #1
|
|
||||||
+ LSYM(10)
|
|
||||||
+ movne r0, #0
|
|
||||||
+ pop {r4-r7}
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_cmpset_acq_64)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_cmpset_rel_64)
|
|
||||||
+ push {r4-r7}
|
|
||||||
+ ldrd r6, r7, [sp, #16]
|
|
||||||
+ LSYM(11)
|
|
||||||
+ ldrexd r4, r5, [r0]
|
|
||||||
+ cmp r4, r2
|
|
||||||
+ it eq
|
|
||||||
+ cmpeq r5, r3
|
|
||||||
+ bne REFLSYM(12)
|
|
||||||
+ dmb
|
|
||||||
+ strexd r1, r6, r7, [r0]
|
|
||||||
+ cmp r1, #0
|
|
||||||
+ bne REFLSYM(11)
|
|
||||||
+ mov r0, #1
|
|
||||||
+ LSYM(12)
|
|
||||||
+ movne r0, #0
|
|
||||||
+ pop {r4-r7}
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_cmpset_rel_64)
|
|
||||||
+#END_64BIT
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_add_32)
|
|
||||||
+ LSYM(13)
|
|
||||||
+ ldrex r2, [r0]
|
|
||||||
+ add r2, r2, r1
|
|
||||||
+ strex r3, r2, [r0]
|
|
||||||
+ cmp r3, #0
|
|
||||||
+ bne REFLSYM(13)
|
|
||||||
+ mov r0, r2
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_add_32)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+START_FUNC(opal_atomic_sub_32)
|
|
||||||
+ LSYM(14)
|
|
||||||
+ ldrex r2, [r0]
|
|
||||||
+ sub r2, r2, r1
|
|
||||||
+ strex r3, r2, [r0]
|
|
||||||
+ cmp r3, #0
|
|
||||||
+ bne REFLSYM(14)
|
|
||||||
+ mov r0, r2
|
|
||||||
+ bx lr
|
|
||||||
+END_FUNC(opal_atomic_sub_32)
|
|
||||||
diff -urNp openmpi-1.6.3_orig/opal/asm/Makefile.am openmpi-1.6.3/opal/asm/Makefile.am
|
|
||||||
--- openmpi-1.6.3_orig/opal/asm/Makefile.am 2012-04-03 10:29:44.000000000 -0400
|
|
||||||
+++ openmpi-1.6.3/opal/asm/Makefile.am 2012-11-11 02:32:34.933714963 -0500
|
|
||||||
@@ -65,7 +65,9 @@ EXTRA_DIST = \
|
|
||||||
base/default.conf \
|
|
||||||
base/ALPHA.asm \
|
|
||||||
base/AMD64.asm \
|
|
||||||
- base/ARM.asm \
|
|
||||||
+ base/ARMV5.asm \
|
|
||||||
+ base/ARMV6.asm \
|
|
||||||
+ base/ARMV7.asm \
|
|
||||||
base/IA32.asm \
|
|
||||||
base/IA64.asm \
|
|
||||||
base/MIPS.asm \
|
|
||||||
diff -urNp openmpi-1.6.3_orig/opal/asm/Makefile.in openmpi-1.6.3/opal/asm/Makefile.in
|
|
||||||
--- openmpi-1.6.3_orig/opal/asm/Makefile.in 2012-10-24 11:41:12.000000000 -0400
|
|
||||||
+++ openmpi-1.6.3/opal/asm/Makefile.in 2012-11-11 02:33:07.069715466 -0500
|
|
||||||
@@ -1154,7 +1154,9 @@ EXTRA_DIST = \
|
|
||||||
base/default.conf \
|
|
||||||
base/ALPHA.asm \
|
|
||||||
base/AMD64.asm \
|
|
||||||
- base/ARM.asm \
|
|
||||||
+ base/ARMV5.asm \
|
|
||||||
+ base/ARMV6.asm \
|
|
||||||
+ base/ARMV7.asm \
|
|
||||||
base/IA32.asm \
|
|
||||||
base/IA64.asm \
|
|
||||||
base/MIPS.asm \
|
|
||||||
diff -urNp openmpi-1.6.3_orig/opal/config/opal_config_asm.m4 openmpi-1.6.3/opal/config/opal_config_asm.m4
|
|
||||||
--- openmpi-1.6.3_orig/opal/config/opal_config_asm.m4 2012-05-02 09:04:04.000000000 -0400
|
|
||||||
+++ openmpi-1.6.3/opal/config/opal_config_asm.m4 2012-11-11 02:31:38.429714062 -0500
|
|
||||||
@@ -904,6 +904,7 @@ AC_DEFUN([OMPI_CONFIG_ASM],[
|
|
||||||
ompi_cv_asm_arch="ARM"
|
|
||||||
OPAL_ASM_SUPPORT_64BIT=1
|
|
||||||
OPAL_ASM_ARM_VERSION=7
|
|
||||||
+ cp -f "$top_ompi_builddir/opal/asm/base/ARMV7.asm" "$top_ompi_builddir/opal/asm/base/ARM.asm"
|
|
||||||
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)'
|
|
||||||
@@ -913,6 +914,7 @@ AC_DEFUN([OMPI_CONFIG_ASM],[
|
|
||||||
ompi_cv_asm_arch="ARM"
|
|
||||||
OPAL_ASM_SUPPORT_64BIT=0
|
|
||||||
OPAL_ASM_ARM_VERSION=6
|
|
||||||
+ cp -f "$top_ompi_builddir/opal/asm/base/ARMV6.asm" "$top_ompi_builddir/opal/asm/base/ARM.asm"
|
|
||||||
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)'
|
|
||||||
@@ -923,6 +925,7 @@ AC_DEFUN([OMPI_CONFIG_ASM],[
|
|
||||||
ompi_cv_asm_arch="ARM"
|
|
||||||
OPAL_ASM_SUPPORT_64BIT=0
|
|
||||||
OPAL_ASM_ARM_VERSION=5
|
|
||||||
+ cp -f "$top_ompi_builddir/opal/asm/base/ARMV5.asm" "$top_ompi_builddir/opal/asm/base/ARM.asm"
|
|
||||||
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)'
|
|
||||||
Binary files openmpi-1.6.3_orig/opal/include/opal/sys/arm/.atomic.h.swp and openmpi-1.6.3/opal/include/opal/sys/arm/.atomic.h.swp differ
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
|||||||
diff -up openmpi-1.6.3/VERSION.f90sover openmpi-1.6.3/VERSION
|
|
||||||
--- openmpi-1.6.3/VERSION.f90sover 2012-10-24 09:37:48.000000000 -0600
|
|
||||||
+++ openmpi-1.6.3/VERSION 2012-11-05 10:36:14.904136788 -0700
|
|
||||||
@@ -82,7 +82,7 @@ date="Oct 24, 2012"
|
|
||||||
libmpi_so_version=1:6:0
|
|
||||||
libmpi_cxx_so_version=1:1:0
|
|
||||||
libmpi_f77_so_version=1:6:0
|
|
||||||
-libmpi_f90_so_version=4:0:1
|
|
||||||
+libmpi_f90_so_version=4:0:3
|
|
||||||
libopen_rte_so_version=4:3:0
|
|
||||||
libopen_pal_so_version=4:3:0
|
|
||||||
|
|
14
openmpi.spec
14
openmpi.spec
@ -18,8 +18,8 @@
|
|||||||
#global _cc_name_suffix -gcc
|
#global _cc_name_suffix -gcc
|
||||||
|
|
||||||
Name: openmpi%{?_cc_name_suffix}
|
Name: openmpi%{?_cc_name_suffix}
|
||||||
Version: 1.6.3
|
Version: 1.6.4
|
||||||
Release: 6%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: Open Message Passing Interface
|
Summary: Open Message Passing Interface
|
||||||
Group: Development/Libraries
|
Group: Development/Libraries
|
||||||
License: BSD, MIT and Romio
|
License: BSD, MIT and Romio
|
||||||
@ -37,10 +37,6 @@ Source2: macros.openmpi
|
|||||||
Patch0: openmpi-removed.patch
|
Patch0: openmpi-removed.patch
|
||||||
# Patch to use system ltdl for tests
|
# Patch to use system ltdl for tests
|
||||||
Patch1: openmpi-ltdl.patch
|
Patch1: openmpi-ltdl.patch
|
||||||
# Patch to fix libmpi_f90.so so version
|
|
||||||
Patch2: openmpi-f90sover.patch
|
|
||||||
# Patch to fix build on ARM
|
|
||||||
Patch3: openmpi-1.6.3-arm-atomics.patch
|
|
||||||
|
|
||||||
BuildRequires: gcc-gfortran
|
BuildRequires: gcc-gfortran
|
||||||
#sparc 64 doesn't have valgrind
|
#sparc 64 doesn't have valgrind
|
||||||
@ -119,8 +115,6 @@ Contains development headers and libraries for openmpi
|
|||||||
%setup -q -n openmpi-%{version}
|
%setup -q -n openmpi-%{version}
|
||||||
%patch0 -p1 -b .removed
|
%patch0 -p1 -b .removed
|
||||||
%patch1 -p1 -b .ltdl
|
%patch1 -p1 -b .ltdl
|
||||||
%patch2 -p1 -b .f90sover
|
|
||||||
%patch3 -p1 -b .arm-atomics
|
|
||||||
# Make sure we don't use the local libltdl library
|
# Make sure we don't use the local libltdl library
|
||||||
rm -r opal/libltdl
|
rm -r opal/libltdl
|
||||||
|
|
||||||
@ -243,6 +237,10 @@ make check
|
|||||||
%{_sysconfdir}/rpm/macros.%{namearch}
|
%{_sysconfdir}/rpm/macros.%{namearch}
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Feb 22 2013 Orion Poplawski <orion@cora.nwra.com> 1.6.4-1
|
||||||
|
- Update to 1.6.4
|
||||||
|
- Drop f90sover and arm-atomics patch fixed upstream
|
||||||
|
|
||||||
* Sun Nov 18 2012 Peter Robinson <pbrobinson@fedoraproject.org> 1.6.3-6
|
* Sun Nov 18 2012 Peter Robinson <pbrobinson@fedoraproject.org> 1.6.3-6
|
||||||
- Update atomics patch for ARM (thanks to Jon Masters)
|
- Update atomics patch for ARM (thanks to Jon Masters)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user