Date: Sunday, September 22, 2013 @ 23:22:23
  Author: daniel
Revision: 194705

archrelease: copy trunk to extra-i686, extra-x86_64

Added:
  mono/repos/extra-i686/PKGBUILD
    (from rev 194704, mono/trunk/PKGBUILD)
  mono/repos/extra-i686/bug434892.patch
    (from rev 194704, mono/trunk/bug434892.patch)
  mono/repos/extra-i686/mini_amd64.patch
    (from rev 194704, mono/trunk/mini_amd64.patch)
  mono/repos/extra-i686/mono.binfmt.d
    (from rev 194704, mono/trunk/mono.binfmt.d)
  mono/repos/extra-i686/mono.install
    (from rev 194704, mono/trunk/mono.install)
  mono/repos/extra-i686/sgen_fix.patch
    (from rev 194704, mono/trunk/sgen_fix.patch)
  mono/repos/extra-x86_64/PKGBUILD
    (from rev 194704, mono/trunk/PKGBUILD)
  mono/repos/extra-x86_64/bug434892.patch
    (from rev 194704, mono/trunk/bug434892.patch)
  mono/repos/extra-x86_64/mini_amd64.patch
    (from rev 194704, mono/trunk/mini_amd64.patch)
  mono/repos/extra-x86_64/mono.binfmt.d
    (from rev 194704, mono/trunk/mono.binfmt.d)
  mono/repos/extra-x86_64/mono.install
    (from rev 194704, mono/trunk/mono.install)
  mono/repos/extra-x86_64/sgen_fix.patch
    (from rev 194704, mono/trunk/sgen_fix.patch)
Deleted:
  mono/repos/extra-i686/mono.install
  mono/repos/extra-x86_64/mono.install

-------------------------------+
 /mono.install                 |   14 +++++
 extra-i686/PKGBUILD           |   57 ++++++++++++++++++++
 extra-i686/bug434892.patch    |   11 +++
 extra-i686/mini_amd64.patch   |   13 ++++
 extra-i686/mono.binfmt.d      |    1 
 extra-i686/mono.install       |    7 --
 extra-i686/sgen_fix.patch     |  112 ++++++++++++++++++++++++++++++++++++++++
 extra-x86_64/PKGBUILD         |   57 ++++++++++++++++++++
 extra-x86_64/bug434892.patch  |   11 +++
 extra-x86_64/mini_amd64.patch |   13 ++++
 extra-x86_64/mono.binfmt.d    |    1 
 extra-x86_64/mono.install     |    7 --
 extra-x86_64/sgen_fix.patch   |  112 ++++++++++++++++++++++++++++++++++++++++
 13 files changed, 402 insertions(+), 14 deletions(-)

Copied: mono/repos/extra-i686/PKGBUILD (from rev 194704, mono/trunk/PKGBUILD)
===================================================================
--- extra-i686/PKGBUILD                         (rev 0)
+++ extra-i686/PKGBUILD 2013-09-22 21:22:23 UTC (rev 194705)
@@ -0,0 +1,57 @@
+# $Id$
+# Maintainer: Daniel Isenmann <dan...@archlinux.org>
+# Contributor: Brice Carpentier <br...@dlfp.org>
+
+pkgname=mono
+pkgver=3.2.3
+pkgrel=1
+pkgdesc="Free implementation of the .NET platform including runtime and 
compiler"
+arch=(i686 x86_64)
+license=('GPL' 'LGPL2' 'MPL' 'custom:MITX11')
+url="http://www.mono-project.com/";
+depends=('zlib' 'libgdiplus>=2.10' 'sh')
+makedepends=('pkgconfig')
+options=('!libtool' '!makeflags')
+provides=('monodoc')
+conflicts=('monodoc')
+install=mono.install
+source=(http://download.mono-project.com/sources/mono/${pkgname}-${pkgver}.tar.bz2
+        mono.binfmt.d
+       mono.install
+       sgen_fix.patch)
+md5sums=('a66c6309fad071e21f77f4c6b67a0f10'
+         'b9ef8a65fea497acf176cca16c1e2402'
+         'ca1108e9638b01c26453ee663592a4e5'
+         '8a700b94bff7a913f920e95890d2fb4c')
+
+build() {
+  cd "${srcdir}"/${pkgname}-${pkgver}
+  patch -p1 < ../sgen_fix.patch
+  # build mono
+  ./configure --prefix=/usr --sysconfdir=/etc --bindir=/usr/bin 
--sbindir=/usr/bin
+  make
+
+  # build jay
+  cd "${srcdir}"/${pkgname}-${pkgver}/mcs/jay
+  make
+}
+
+package() {
+  cd "${srcdir}"/${pkgname}-${pkgver}
+  make DESTDIR="${pkgdir}" install
+
+  # install jay
+  cd "${srcdir}"/${pkgname}-${pkgver}/mcs/jay
+  make DESTDIR="${pkgdir}" prefix=/usr INSTALL=../../install-sh install
+  cd "${srcdir}"/${pkgname}-${pkgver}
+
+  # install binfmt conf file and pathes
+  install -D -m644 "${srcdir}"/mono.binfmt.d 
"${pkgdir}"/usr/lib/binfmt.d/mono.conf
+
+  #install license
+  mkdir -p "${pkgdir}"/usr/share/licenses/${pkgname}
+  install -m644 mcs/MIT.X11 "${pkgdir}"/usr/share/licenses/${pkgname}/
+  
+  #fix .pc file to be able to request mono on what it depends, fixes #go-oo 
build
+  sed -i -e "s:#Requires:Requires:" "${pkgdir}"/usr/lib/pkgconfig/mono.pc
+}

Copied: mono/repos/extra-i686/bug434892.patch (from rev 194704, 
mono/trunk/bug434892.patch)
===================================================================
--- extra-i686/bug434892.patch                          (rev 0)
+++ extra-i686/bug434892.patch  2013-09-22 21:22:23 UTC (rev 194705)
@@ -0,0 +1,11 @@
+--- 
trunk/mcs/class/System.Web.Services/System.Web.Services.Description/BasicProfileChecker.cs
 2008/07/01 20:17:46     107006
++++ 
trunk/mcs/class/System.Web.Services/System.Web.Services.Description/BasicProfileChecker.cs
 2008/10/28 09:32:46     117243
+@@ -177,7 +177,7 @@
+                               foreach (OperationMessage om in op.Messages) {
+                                       Message msg = ctx.Services.GetMessage 
(om.Message);
+                                       foreach (MessagePart part in msg.Parts)
+-                                              parts.Add (part,part);
++                                              parts [part] = part; // do not 
use Add() - there could be the same MessagePart instance.
+                               }
+                       }
+                       

Copied: mono/repos/extra-i686/mini_amd64.patch (from rev 194704, 
mono/trunk/mini_amd64.patch)
===================================================================
--- extra-i686/mini_amd64.patch                         (rev 0)
+++ extra-i686/mini_amd64.patch 2013-09-22 21:22:23 UTC (rev 194705)
@@ -0,0 +1,13 @@
+--- mono/mini/mini-amd64.c     2009-03-19 21:08:18 UTC (rev 129824)
++++ mono/mini/mini-amd64.c     2009-03-19 21:09:53 UTC (rev 129825)
+@@ -1009,7 +1009,7 @@
+               locals_size += mono_type_size (ins->inst_vtype, &ialign);
+       }
+ 
+-      if ((cfg->num_varinfo > 10000) || (locals_size >= (1 << 15))) {
++      if ((cfg->num_varinfo > 5000) || (locals_size >= (1 << 15)) || 
(header->code_size > 110000)) {
+               /* Avoid hitting the stack_alloc_size < (1 << 16) assertion in 
emit_epilog () */
+               cfg->arch.omit_fp = FALSE;
+       }
+
+                       

Copied: mono/repos/extra-i686/mono.binfmt.d (from rev 194704, 
mono/trunk/mono.binfmt.d)
===================================================================
--- extra-i686/mono.binfmt.d                            (rev 0)
+++ extra-i686/mono.binfmt.d    2013-09-22 21:22:23 UTC (rev 194705)
@@ -0,0 +1 @@
+:CLR:M::MZ::/usr/bin/mono:

Deleted: extra-i686/mono.install
===================================================================
--- extra-i686/mono.install     2013-09-22 21:22:14 UTC (rev 194704)
+++ extra-i686/mono.install     2013-09-22 21:22:23 UTC (rev 194705)
@@ -1,7 +0,0 @@
-post_install() {
-ln -sf /bin/mono-sgen /bin/mono
-}
-
-post_upgrade() {
-post_install
-} 

Copied: mono/repos/extra-i686/mono.install (from rev 194704, 
mono/trunk/mono.install)
===================================================================
--- extra-i686/mono.install                             (rev 0)
+++ extra-i686/mono.install     2013-09-22 21:22:23 UTC (rev 194705)
@@ -0,0 +1,7 @@
+post_install() {
+ln -sf /bin/mono-sgen /bin/mono
+}
+
+post_upgrade() {
+post_install
+} 

Copied: mono/repos/extra-i686/sgen_fix.patch (from rev 194704, 
mono/trunk/sgen_fix.patch)
===================================================================
--- extra-i686/sgen_fix.patch                           (rev 0)
+++ extra-i686/sgen_fix.patch   2013-09-22 21:22:23 UTC (rev 194705)
@@ -0,0 +1,112 @@
+From d2cc22580898df5d4a15e0f99ab513e1570a6082 Mon Sep 17 00:00:00 2001
+From: Zoltan Varga <var...@gmail.com>
+Date: Fri, 20 Sep 2013 19:06:34 +0200
+Subject: [PATCH] [sgen] Use __builtin_ctzl () in OBJ_BITMAP_FOREACH_PTR () on
+ 64 bit platforms. Fixes #14834.
+
+---
+ mono/metadata/sgen-descriptor.h | 28 +++++++++++++++++++++++++---
+ mono/tests/sgen-descriptors.cs  | 15 +++++++++++++--
+ 2 files changed, 38 insertions(+), 5 deletions(-)
+
+diff --git a/mono/metadata/sgen-descriptor.h b/mono/metadata/sgen-descriptor.h
+index cd53a86..3a00589 100644
+--- a/mono/metadata/sgen-descriptor.h
++++ b/mono/metadata/sgen-descriptor.h
+@@ -170,21 +170,43 @@ enum {
+               }       \
+       } while (0)
+ 
+-#ifdef __GNUC__
++#if defined(__GNUC__) && SIZEOF_VOID_P==4
++#define OBJ_BITMAP_FOREACH_PTR(desc,obj)       do {    \
++              /* there are pointers */        \
++              void **_objptr = (void**)(obj); \
++              gsize _bmap = (desc) >> 16;     \
++              _objptr += OBJECT_HEADER_WORDS; \
++              { \
++                      int _index = __builtin_ctz (_bmap);             \
++                      _objptr += _index; \
++                      _bmap >>= (_index + 1);                         \
++                      HANDLE_PTR (_objptr, (obj));            \
++                      _objptr ++;                                             
        \
++                      } \
++              while (_bmap) { \
++                      int _index = __builtin_ctz (_bmap);             \
++                      _objptr += _index; \
++                      _bmap >>= (_index + 1);                         \
++                      HANDLE_PTR (_objptr, (obj));            \
++                      _objptr ++;                                             
        \
++              }                                                               
                \
++      } while (0)
++#elif defined(__GNUC__) && SIZEOF_VOID_P==8
++/* Same as above, but use _builtin_ctzl () */
+ #define OBJ_BITMAP_FOREACH_PTR(desc,obj)       do {    \
+               /* there are pointers */        \
+               void **_objptr = (void**)(obj); \
+               gsize _bmap = (desc) >> 16;     \
+               _objptr += OBJECT_HEADER_WORDS; \
+               { \
+-                      int _index = __builtin_ctz (_bmap); \
++                      int _index = __builtin_ctzl (_bmap);            \
+                       _objptr += _index; \
+                       _bmap >>= (_index + 1);                         \
+                       HANDLE_PTR (_objptr, (obj));            \
+                       _objptr ++;                                             
        \
+                       } \
+               while (_bmap) { \
+-                      int _index = __builtin_ctz (_bmap); \
++                      int _index = __builtin_ctzl (_bmap);            \
+                       _objptr += _index; \
+                       _bmap >>= (_index + 1);                         \
+                       HANDLE_PTR (_objptr, (obj));            \
+diff --git a/mono/tests/sgen-descriptors.cs b/mono/tests/sgen-descriptors.cs
+index ae00084..246e5aa 100644
+--- a/mono/tests/sgen-descriptors.cs
++++ b/mono/tests/sgen-descriptors.cs
+@@ -1,4 +1,5 @@
+ using System;
++using System.Runtime.InteropServices;
+ 
+ public struct SmallMixed
+ {
+@@ -47,6 +48,13 @@ public class HugePtrFree {
+       public LargeStruct2 c;
+ }
+ 
++[StructLayout (LayoutKind.Sequential)]
++public class Non32bitBitmap {
++      public object o;
++      public long i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, 
i14, i15, i16, i17, i18, i19, i20, i21, i22, i23, i24, i25, i26, i27, i28, i29, 
i30, i31, i32, i33, i34, i35;
++      public object o2;
++}
++
+ /*
+ This is a stress test for descriptors.
+ */
+@@ -54,10 +62,10 @@ class Driver {
+       static char[] FOO = new char[] { 'f', 'o', 'b' };
+ 
+       static void Fill (int cycles) {
+-              object[] root = new object [12];
++              object[] root = new object [13];
+               object[] current = root;
+               for (int i = 0; i < cycles; ++i) {
+-                      current [0] = new object [12];
++                      current [0] = new object [13];
+                       current [1] = new int [6];
+                       current [2] = new int [2,3];
+                       current [3] = new string (FOO);
+@@ -72,6 +80,9 @@ class Driver {
+                               current [10] = new HugePtrFree ();
+                       if ((i %  10000) == 0)
+                               current [11] = new LargeStruct2 [1];
++
++                      /* Test for 64 bit bitmap descriptors (#14834) */
++                      current [12] = new Non32bitBitmap () { o = new object 
(), i32 = 1, i33 = 1, i34 = 1, i35 = 1, o2 = new object () };
+       
+                       current = (object[])current [0];
+               }
+-- 
+1.8.4
+

Copied: mono/repos/extra-x86_64/PKGBUILD (from rev 194704, mono/trunk/PKGBUILD)
===================================================================
--- extra-x86_64/PKGBUILD                               (rev 0)
+++ extra-x86_64/PKGBUILD       2013-09-22 21:22:23 UTC (rev 194705)
@@ -0,0 +1,57 @@
+# $Id$
+# Maintainer: Daniel Isenmann <dan...@archlinux.org>
+# Contributor: Brice Carpentier <br...@dlfp.org>
+
+pkgname=mono
+pkgver=3.2.3
+pkgrel=1
+pkgdesc="Free implementation of the .NET platform including runtime and 
compiler"
+arch=(i686 x86_64)
+license=('GPL' 'LGPL2' 'MPL' 'custom:MITX11')
+url="http://www.mono-project.com/";
+depends=('zlib' 'libgdiplus>=2.10' 'sh')
+makedepends=('pkgconfig')
+options=('!libtool' '!makeflags')
+provides=('monodoc')
+conflicts=('monodoc')
+install=mono.install
+source=(http://download.mono-project.com/sources/mono/${pkgname}-${pkgver}.tar.bz2
+        mono.binfmt.d
+       mono.install
+       sgen_fix.patch)
+md5sums=('a66c6309fad071e21f77f4c6b67a0f10'
+         'b9ef8a65fea497acf176cca16c1e2402'
+         'ca1108e9638b01c26453ee663592a4e5'
+         '8a700b94bff7a913f920e95890d2fb4c')
+
+build() {
+  cd "${srcdir}"/${pkgname}-${pkgver}
+  patch -p1 < ../sgen_fix.patch
+  # build mono
+  ./configure --prefix=/usr --sysconfdir=/etc --bindir=/usr/bin 
--sbindir=/usr/bin
+  make
+
+  # build jay
+  cd "${srcdir}"/${pkgname}-${pkgver}/mcs/jay
+  make
+}
+
+package() {
+  cd "${srcdir}"/${pkgname}-${pkgver}
+  make DESTDIR="${pkgdir}" install
+
+  # install jay
+  cd "${srcdir}"/${pkgname}-${pkgver}/mcs/jay
+  make DESTDIR="${pkgdir}" prefix=/usr INSTALL=../../install-sh install
+  cd "${srcdir}"/${pkgname}-${pkgver}
+
+  # install binfmt conf file and pathes
+  install -D -m644 "${srcdir}"/mono.binfmt.d 
"${pkgdir}"/usr/lib/binfmt.d/mono.conf
+
+  #install license
+  mkdir -p "${pkgdir}"/usr/share/licenses/${pkgname}
+  install -m644 mcs/MIT.X11 "${pkgdir}"/usr/share/licenses/${pkgname}/
+  
+  #fix .pc file to be able to request mono on what it depends, fixes #go-oo 
build
+  sed -i -e "s:#Requires:Requires:" "${pkgdir}"/usr/lib/pkgconfig/mono.pc
+}

Copied: mono/repos/extra-x86_64/bug434892.patch (from rev 194704, 
mono/trunk/bug434892.patch)
===================================================================
--- extra-x86_64/bug434892.patch                                (rev 0)
+++ extra-x86_64/bug434892.patch        2013-09-22 21:22:23 UTC (rev 194705)
@@ -0,0 +1,11 @@
+--- 
trunk/mcs/class/System.Web.Services/System.Web.Services.Description/BasicProfileChecker.cs
 2008/07/01 20:17:46     107006
++++ 
trunk/mcs/class/System.Web.Services/System.Web.Services.Description/BasicProfileChecker.cs
 2008/10/28 09:32:46     117243
+@@ -177,7 +177,7 @@
+                               foreach (OperationMessage om in op.Messages) {
+                                       Message msg = ctx.Services.GetMessage 
(om.Message);
+                                       foreach (MessagePart part in msg.Parts)
+-                                              parts.Add (part,part);
++                                              parts [part] = part; // do not 
use Add() - there could be the same MessagePart instance.
+                               }
+                       }
+                       

Copied: mono/repos/extra-x86_64/mini_amd64.patch (from rev 194704, 
mono/trunk/mini_amd64.patch)
===================================================================
--- extra-x86_64/mini_amd64.patch                               (rev 0)
+++ extra-x86_64/mini_amd64.patch       2013-09-22 21:22:23 UTC (rev 194705)
@@ -0,0 +1,13 @@
+--- mono/mini/mini-amd64.c     2009-03-19 21:08:18 UTC (rev 129824)
++++ mono/mini/mini-amd64.c     2009-03-19 21:09:53 UTC (rev 129825)
+@@ -1009,7 +1009,7 @@
+               locals_size += mono_type_size (ins->inst_vtype, &ialign);
+       }
+ 
+-      if ((cfg->num_varinfo > 10000) || (locals_size >= (1 << 15))) {
++      if ((cfg->num_varinfo > 5000) || (locals_size >= (1 << 15)) || 
(header->code_size > 110000)) {
+               /* Avoid hitting the stack_alloc_size < (1 << 16) assertion in 
emit_epilog () */
+               cfg->arch.omit_fp = FALSE;
+       }
+
+                       

Copied: mono/repos/extra-x86_64/mono.binfmt.d (from rev 194704, 
mono/trunk/mono.binfmt.d)
===================================================================
--- extra-x86_64/mono.binfmt.d                          (rev 0)
+++ extra-x86_64/mono.binfmt.d  2013-09-22 21:22:23 UTC (rev 194705)
@@ -0,0 +1 @@
+:CLR:M::MZ::/usr/bin/mono:

Deleted: extra-x86_64/mono.install
===================================================================
--- extra-x86_64/mono.install   2013-09-22 21:22:14 UTC (rev 194704)
+++ extra-x86_64/mono.install   2013-09-22 21:22:23 UTC (rev 194705)
@@ -1,7 +0,0 @@
-post_install() {
-ln -sf /bin/mono-sgen /bin/mono
-}
-
-post_upgrade() {
-post_install
-} 

Copied: mono/repos/extra-x86_64/mono.install (from rev 194704, 
mono/trunk/mono.install)
===================================================================
--- extra-x86_64/mono.install                           (rev 0)
+++ extra-x86_64/mono.install   2013-09-22 21:22:23 UTC (rev 194705)
@@ -0,0 +1,7 @@
+post_install() {
+ln -sf /bin/mono-sgen /bin/mono
+}
+
+post_upgrade() {
+post_install
+} 

Copied: mono/repos/extra-x86_64/sgen_fix.patch (from rev 194704, 
mono/trunk/sgen_fix.patch)
===================================================================
--- extra-x86_64/sgen_fix.patch                         (rev 0)
+++ extra-x86_64/sgen_fix.patch 2013-09-22 21:22:23 UTC (rev 194705)
@@ -0,0 +1,112 @@
+From d2cc22580898df5d4a15e0f99ab513e1570a6082 Mon Sep 17 00:00:00 2001
+From: Zoltan Varga <var...@gmail.com>
+Date: Fri, 20 Sep 2013 19:06:34 +0200
+Subject: [PATCH] [sgen] Use __builtin_ctzl () in OBJ_BITMAP_FOREACH_PTR () on
+ 64 bit platforms. Fixes #14834.
+
+---
+ mono/metadata/sgen-descriptor.h | 28 +++++++++++++++++++++++++---
+ mono/tests/sgen-descriptors.cs  | 15 +++++++++++++--
+ 2 files changed, 38 insertions(+), 5 deletions(-)
+
+diff --git a/mono/metadata/sgen-descriptor.h b/mono/metadata/sgen-descriptor.h
+index cd53a86..3a00589 100644
+--- a/mono/metadata/sgen-descriptor.h
++++ b/mono/metadata/sgen-descriptor.h
+@@ -170,21 +170,43 @@ enum {
+               }       \
+       } while (0)
+ 
+-#ifdef __GNUC__
++#if defined(__GNUC__) && SIZEOF_VOID_P==4
++#define OBJ_BITMAP_FOREACH_PTR(desc,obj)       do {    \
++              /* there are pointers */        \
++              void **_objptr = (void**)(obj); \
++              gsize _bmap = (desc) >> 16;     \
++              _objptr += OBJECT_HEADER_WORDS; \
++              { \
++                      int _index = __builtin_ctz (_bmap);             \
++                      _objptr += _index; \
++                      _bmap >>= (_index + 1);                         \
++                      HANDLE_PTR (_objptr, (obj));            \
++                      _objptr ++;                                             
        \
++                      } \
++              while (_bmap) { \
++                      int _index = __builtin_ctz (_bmap);             \
++                      _objptr += _index; \
++                      _bmap >>= (_index + 1);                         \
++                      HANDLE_PTR (_objptr, (obj));            \
++                      _objptr ++;                                             
        \
++              }                                                               
                \
++      } while (0)
++#elif defined(__GNUC__) && SIZEOF_VOID_P==8
++/* Same as above, but use _builtin_ctzl () */
+ #define OBJ_BITMAP_FOREACH_PTR(desc,obj)       do {    \
+               /* there are pointers */        \
+               void **_objptr = (void**)(obj); \
+               gsize _bmap = (desc) >> 16;     \
+               _objptr += OBJECT_HEADER_WORDS; \
+               { \
+-                      int _index = __builtin_ctz (_bmap); \
++                      int _index = __builtin_ctzl (_bmap);            \
+                       _objptr += _index; \
+                       _bmap >>= (_index + 1);                         \
+                       HANDLE_PTR (_objptr, (obj));            \
+                       _objptr ++;                                             
        \
+                       } \
+               while (_bmap) { \
+-                      int _index = __builtin_ctz (_bmap); \
++                      int _index = __builtin_ctzl (_bmap);            \
+                       _objptr += _index; \
+                       _bmap >>= (_index + 1);                         \
+                       HANDLE_PTR (_objptr, (obj));            \
+diff --git a/mono/tests/sgen-descriptors.cs b/mono/tests/sgen-descriptors.cs
+index ae00084..246e5aa 100644
+--- a/mono/tests/sgen-descriptors.cs
++++ b/mono/tests/sgen-descriptors.cs
+@@ -1,4 +1,5 @@
+ using System;
++using System.Runtime.InteropServices;
+ 
+ public struct SmallMixed
+ {
+@@ -47,6 +48,13 @@ public class HugePtrFree {
+       public LargeStruct2 c;
+ }
+ 
++[StructLayout (LayoutKind.Sequential)]
++public class Non32bitBitmap {
++      public object o;
++      public long i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, 
i14, i15, i16, i17, i18, i19, i20, i21, i22, i23, i24, i25, i26, i27, i28, i29, 
i30, i31, i32, i33, i34, i35;
++      public object o2;
++}
++
+ /*
+ This is a stress test for descriptors.
+ */
+@@ -54,10 +62,10 @@ class Driver {
+       static char[] FOO = new char[] { 'f', 'o', 'b' };
+ 
+       static void Fill (int cycles) {
+-              object[] root = new object [12];
++              object[] root = new object [13];
+               object[] current = root;
+               for (int i = 0; i < cycles; ++i) {
+-                      current [0] = new object [12];
++                      current [0] = new object [13];
+                       current [1] = new int [6];
+                       current [2] = new int [2,3];
+                       current [3] = new string (FOO);
+@@ -72,6 +80,9 @@ class Driver {
+                               current [10] = new HugePtrFree ();
+                       if ((i %  10000) == 0)
+                               current [11] = new LargeStruct2 [1];
++
++                      /* Test for 64 bit bitmap descriptors (#14834) */
++                      current [12] = new Non32bitBitmap () { o = new object 
(), i32 = 1, i33 = 1, i34 = 1, i35 = 1, o2 = new object () };
+       
+                       current = (object[])current [0];
+               }
+-- 
+1.8.4
+

Reply via email to