blob: 096b5bd8ca13bb4755016c0c5d2d91f36dce6d30 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
--- ocaml/configure 2003/01/09 12:01:51 1.183
+++ ocaml/configure 2003/03/10 17:04:00 1.184
@@ -391,17 +391,25 @@ esac
# Determine alignment constraints
-sh ./runtest dblalign.c
-case $? in
- 0) echo "Doubles can be word-aligned."
- echo "#undef ARCH_ALIGN_DOUBLE" >> m.h;;
- 1) echo "Doubles must be doubleword-aligned."
- echo "#define ARCH_ALIGN_DOUBLE" >> m.h;;
- *) echo "Something went wrong during alignment determination for doubles."
- echo "I'm going to assume this architecture has alignment constraints over doubles."
- echo "That's a safe bet: Objective Caml will work even if"
- echo "this architecture has actually no alignment constraints."
- echo "#define ARCH_ALIGN_DOUBLE" >> m.h;;
+case "$host" in
+ sparc-*-*)
+ # On Sparc V9 with certain versions of gcc, determination of double
+ # alignment is not reliable (PR#1521), hence force it
+ echo "Doubles must be doubleword-aligned."
+ echo "#define ARCH_ALIGN_DOUBLE" >> m.h;;
+ *)
+ sh ./runtest dblalign.c
+ case $? in
+ 0) echo "Doubles can be word-aligned."
+ echo "#undef ARCH_ALIGN_DOUBLE" >> m.h;;
+ 1) echo "Doubles must be doubleword-aligned."
+ echo "#define ARCH_ALIGN_DOUBLE" >> m.h;;
+ *) echo "Something went wrong during alignment determination for doubles."
+ echo "I'm going to assume this architecture has alignment constraints over doubles."
+ echo "That's a safe bet: Objective Caml will work even if"
+ echo "this architecture has actually no alignment constraints."
+ echo "#define ARCH_ALIGN_DOUBLE" >> m.h;;
+ esac;;
esac
if $int64_native; then
|