Thu, 18 Feb 2010 06:54:48 -0800
6927165: Zero S/390 fixes
Summary: Fixes two failures on 31-bit S/390.
Reviewed-by: twisti
Contributed-by: Gary Benson <gbenson@redhat.com>
src/cpu/zero/vm/globals_zero.hpp | file | annotate | diff | comparison | revisions | |
src/os_cpu/linux_zero/vm/os_linux_zero.hpp | file | annotate | diff | comparison | revisions |
1.1 --- a/src/cpu/zero/vm/globals_zero.hpp Thu Feb 18 11:35:41 2010 +0100 1.2 +++ b/src/cpu/zero/vm/globals_zero.hpp Thu Feb 18 06:54:48 2010 -0800 1.3 @@ -1,6 +1,6 @@ 1.4 /* 1.5 * Copyright 2000-2006 Sun Microsystems, Inc. All Rights Reserved. 1.6 - * Copyright 2007, 2008, 2009 Red Hat, Inc. 1.7 + * Copyright 2007, 2008, 2009, 2010 Red Hat, Inc. 1.8 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 1.9 * 1.10 * This code is free software; you can redistribute it and/or modify it 1.11 @@ -40,7 +40,7 @@ 1.12 1.13 define_pd_global(intx, StackYellowPages, 2); 1.14 define_pd_global(intx, StackRedPages, 1); 1.15 -define_pd_global(intx, StackShadowPages, 3 LP64_ONLY(+3) DEBUG_ONLY(+3)); 1.16 +define_pd_global(intx, StackShadowPages, 5 LP64_ONLY(+1) DEBUG_ONLY(+3)); 1.17 1.18 define_pd_global(bool, RewriteBytecodes, true); 1.19 define_pd_global(bool, RewriteFrequentPairs, true);
2.1 --- a/src/os_cpu/linux_zero/vm/os_linux_zero.hpp Thu Feb 18 11:35:41 2010 +0100 2.2 +++ b/src/os_cpu/linux_zero/vm/os_linux_zero.hpp Thu Feb 18 06:54:48 2010 -0800 2.3 @@ -1,6 +1,6 @@ 2.4 /* 2.5 * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved. 2.6 - * Copyright 2007, 2008 Red Hat, Inc. 2.7 + * Copyright 2007, 2008, 2010 Red Hat, Inc. 2.8 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 2.9 * 2.10 * This code is free software; you can redistribute it and/or modify it 2.11 @@ -39,7 +39,13 @@ 2.12 "stfd %0, 0(%2)\n" 2.13 : "=f"(tmp) 2.14 : "b"(src), "b"(dst)); 2.15 +#elif defined(S390) && !defined(_LP64) 2.16 + double tmp; 2.17 + asm volatile ("ld %0, 0(%1)\n" 2.18 + "std %0, 0(%2)\n" 2.19 + : "=r"(tmp) 2.20 + : "a"(src), "a"(dst)); 2.21 #else 2.22 *(jlong *) dst = *(jlong *) src; 2.23 -#endif // PPC && !_LP64 2.24 +#endif 2.25 }