[PATCH] xpcom/PowerPC lnx: add support for soft-float

Sebastian Andrzej Siewior bigeasy at linutronix.de
Fri Oct 2 21:50:34 UTC 2009


current implemention assumes hard float what means dedicated floating
point registers are used for floating point numbers. This does not work
on soft float toolchains where dedicated floating point registers and
opcodes are not used and/or available. On such toolchains the gcc
compiler provides a built-in define __NO_FPRS__ to signalize such a
behavior.

http://hg.mozilla.org/mozilla-central/rev/38b06fd30c16
https://bugzilla.mozilla.org/show_bug.cgi?id=492299
Target Milestone: mozilla1.9.3a1

Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>

diff --git a/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_ppc_linux.s b/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_ppc_linux.s
index 9ffd7ed..1f1f6c3 100644
--- a/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_ppc_linux.s
+++ b/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_ppc_linux.s
@@ -19,16 +19,17 @@
 // Netscape Communications Corporation.
 // Portions created by the Initial Developer are Copyright (C) 1999
 // the Initial Developer. All Rights Reserved.
 //
 // Contributor(s):
 //   Franz.Sirl-kernel at lauterbach.com (Franz Sirl)
 //   beard at netscape.com (Patrick Beard)
 //   waterson at netscape.com (Chris Waterson)
+//   bigeasy at linutronix.de (Sebastian Andrzej Siewior)
 //
 // Alternatively, the contents of this file may be used under the terms of
 // either the GNU General Public License Version 2 or later (the "GPL"), or
 // the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
 // in which case the provisions of the GPL or the LGPL are applicable instead
 // of those above. If you wish to allow use of your version of this file only
 // under the terms of either the GPL or the LGPL, and not to allow others to
 // use your version of this file under the terms of the MPL, indicate your
@@ -81,29 +82,33 @@ NS_InvokeByIndex_P:
 	neg     r0,r0
 	stwux   r9,sp,r0			// reserve stack space and save SP backchain
 
 	addi    r3,sp,8				// r3 <= args
 	mr      r4,r5				// r4 <= paramCount
 	mr      r5,r6				// r5 <= params
 	add     r6,r3,r10			// r6 <= gpregs ( == args + r10 )
 	mr      r30,r6				// store in r30 for use later...
+#ifndef __NO_FPRS__
 	addi    r7,r6,32			// r7 <= fpregs ( == gpregs + 32 )
+#else
+	li	r7, 0
+#endif
 
 	bl      invoke_copy_to_stack at local	// (args, paramCount, params, gpregs, fpregs)
-
+#ifndef __NO_FPRS__
 	lfd     f1,32(r30)			// load FP registers with method parameters
 	lfd     f2,40(r30)   
 	lfd     f3,48(r30)  
 	lfd     f4,56(r30)  
 	lfd     f5,64(r30)  
 	lfd     f6,72(r30)  
 	lfd     f7,80(r30)  
 	lfd     f8,88(r30)
-
+#endif
 	lwz     r3,8(r31)			// r3 <= that
 	lwz     r4,12(r31)			// r4 <= methodIndex
 	lwz     r5,0(r3)			// r5 <= vtable ( == *that )
 #if !((__GNUC__ == 3 && __GNUC_MINOR__ < 2) || __GXX_ABI_VERSION  >= 100) // G++ pre-V3 ABI
 	addi	r4,r4,2				// skip first two vtable entries
 #endif
 	slwi    r4,r4,2				// convert to offset ( *= 4 )
 	lwzx    r0,r5,r4			// r0 <= methodpointer ( == vtable + offset )
diff --git a/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_ppc_linux.cpp b/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_ppc_linux.cpp
index 033bf4e..e7946b7 100644
--- a/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_ppc_linux.cpp
+++ b/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_ppc_linux.cpp
@@ -18,16 +18,17 @@
  * Netscape Communications Corporation.
  * Portions created by the Initial Developer are Copyright (C) 1998
  * the Initial Developer. All Rights Reserved.
  *
  * Contributor(s):
  *   Franz.Sirl-kernel at lauterbach.com (Franz Sirl)
  *   beard at netscape.com (Patrick Beard)
  *   waterson at netscape.com (Chris Waterson)
+ *   bigeasy at linutronix.de (Sebastian Andrzej Siewior)
  *
  * Alternatively, the contents of this file may be used under the terms of
  * either of the GNU General Public License Version 2 or later (the "GPL"),
  * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
  * in which case the provisions of the GPL or the LGPL are applicable instead
  * of those above. If you wish to allow use of your version of this file only
  * under the terms of either the GPL or the LGPL, and not to allow others to
  * use your version of this file under the terms of the MPL, indicate your
@@ -48,35 +49,39 @@
 // ABI this means that the first 8 integral and floating point
 // parameters are passed in registers.
 
 #include "xptcprivate.h"
 
 // 8 integral parameters are passed in registers
 #define GPR_COUNT     8
 
-// 8 floating point parameters are passed in registers, floats are
-// promoted to doubles when passed in registers
+// With hardfloat support 8 floating point parameters are passed in registers,
+// floats are promoted to doubles when passed in registers
+// In Softfloat mode, everything is handled via gprs
+#ifndef __NO_FPRS__
 #define FPR_COUNT     8
-
+#endif
 extern "C" PRUint32
 invoke_count_words(PRUint32 paramCount, nsXPTCVariant* s)
 {
   return PRUint32(((paramCount * 2) + 3) & ~3);
 }
 
 extern "C" void
 invoke_copy_to_stack(PRUint32* d,
                      PRUint32 paramCount,
                      nsXPTCVariant* s, 
                      PRUint32* gpregs,
                      double* fpregs)
 {
     PRUint32 gpr = 1; // skip one GP reg for 'that'
+#ifndef __NO_FPRS__
     PRUint32 fpr = 0;
+#endif
     PRUint32 tempu32;
     PRUint64 tempu64;
     
     for(uint32 i = 0; i < paramCount; i++, s++) {
         if(s->IsPtrData())
             tempu32 = (PRUint32) s->ptr;
         else {
             switch(s->type) {
@@ -93,27 +98,41 @@ invoke_copy_to_stack(PRUint32* d,
             case nsXPTType::T_BOOL:   tempu32 = s->val.b;             break;
             case nsXPTType::T_CHAR:   tempu32 = s->val.c;             break;
             case nsXPTType::T_WCHAR:  tempu32 = s->val.wc;            break;
             default:                  tempu32 = (PRUint32) s->val.p;  break;
             }
         }
 
         if (!s->IsPtrData() && s->type == nsXPTType::T_DOUBLE) {
+#ifndef __NO_FPRS__
             if (fpr < FPR_COUNT)
                 fpregs[fpr++]    = s->val.d;
+#else
+            if (gpr & 1)
+                gpr++;
+            if ((gpr + 1) < GPR_COUNT) {
+                *((double*) &gpregs[gpr]) = s->val.d;
+                gpr += 2;
+            }
+#endif
             else {
                 if ((PRUint32) d & 4) d++; // doubles are 8-byte aligned on stack
                 *((double*) d) = s->val.d;
                 d += 2;
             }
         }
         else if (!s->IsPtrData() && s->type == nsXPTType::T_FLOAT) {
+#ifndef __NO_FPRS__
             if (fpr < FPR_COUNT)
                 fpregs[fpr++]   = s->val.f; // if passed in registers, floats are promoted to doubles
+#else
+            if (gpr < GPR_COUNT)
+                *((float*) &gpregs[gpr++]) = s->val.f;
+#endif
             else
                 *((float*) d++) = s->val.f;
         }
         else if (!s->IsPtrData() && (s->type == nsXPTType::T_I64
                                      || s->type == nsXPTType::T_U64)) {
             if (gpr & 1) gpr++; // longlongs are aligned in odd/even register pairs, eg. r5/r6
             if ((gpr + 1) < GPR_COUNT) {
                 *((PRUint64*) &gpregs[gpr]) = tempu64;
diff --git a/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_ppc_linux.s b/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_ppc_linux.s
index d5834a1..6aff42c 100644
--- a/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_ppc_linux.s
+++ b/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_ppc_linux.s
@@ -19,16 +19,17 @@
 // Netscape Communications Corporation.
 // Portions created by the Initial Developer are Copyright (C) 1999
 // the Initial Developer. All Rights Reserved.
 //
 // Contributor(s):
 //   Franz.Sirl-kernel at lauterbach.com (Franz Sirl)
 //   beard at netscape.com (Patrick Beard)
 //   waterson at netscape.com (Chris Waterson)
+//   bigeasy at linutronix.de (Sebastian Andrzej Siewior)
 //
 // Alternatively, the contents of this file may be used under the terms of
 // either the GNU General Public License Version 2 or later (the "GPL"), or
 // the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
 // in which case the provisions of the GPL or the LGPL are applicable instead
 // of those above. If you wish to allow use of your version of this file only
 // under the terms of either the GPL or the LGPL, and not to allow others to
 // use your version of this file under the terms of the MPL, indicate your
@@ -70,36 +71,41 @@ SharedStub:
 
 	stw	r4,12(sp)			// save GP registers
 	stw	r5,16(sp)			// (n.b. that we don't save r3
 	stw	r6,20(sp)			// because PrepareAndDispatch() is savvy)
 	stw	r7,24(sp)
 	stw	r8,28(sp)
 	stw	r9,32(sp)
 	stw	r10,36(sp)
-
+#ifndef __NO_FPRS__
 	stfd	f1,40(sp)			// save FP registers
 	stfd	f2,48(sp)
 	stfd	f3,56(sp)
 	stfd	f4,64(sp)
 	stfd	f5,72(sp)
 	stfd	f6,80(sp)
 	stfd	f7,88(sp)
 	stfd	f8,96(sp)
+#endif
 
 						// r3 has the 'self' pointer already
 	
 	mr      r4,r11				// r4 <= methodIndex selector, passed
 						// via r11 in the nsXPTCStubBase::StubXX() call
 	
 	addi	r5,sp,120			// r5 <= pointer to callers args area,
 						// beyond r3-r10/f1-f8 mapped range
 	
 	addi	r6,sp,8				// r6 <= gprData
+#ifndef __NO_FPRS__
 	addi	r7,sp,40			// r7 <= fprData
+#else
+	li	r7, 0				// r7 should be unused
+#endif
       
 	bl	PrepareAndDispatch at local	// Go!
     
 	lwz	r0,116(sp)			// restore LR
 	mtlr	r0
 	la	sp,112(sp)			// clean up the stack
 	blr
 
diff --git a/xpcom/reflect/xptcall/src/md/unix/xptcstubs_ppc_linux.cpp b/xpcom/reflect/xptcall/src/md/unix/xptcstubs_ppc_linux.cpp
index 846583b..8a65994 100644
--- a/xpcom/reflect/xptcall/src/md/unix/xptcstubs_ppc_linux.cpp
+++ b/xpcom/reflect/xptcall/src/md/unix/xptcstubs_ppc_linux.cpp
@@ -18,16 +18,17 @@
  * Netscape Communications Corporation.
  * Portions created by the Initial Developer are Copyright (C) 1999
  * the Initial Developer. All Rights Reserved.
  *
  * Contributor(s):
  *   Franz.Sirl-kernel at lauterbach.com (Franz Sirl)
  *   beard at netscape.com (Patrick Beard)
  *   waterson at netscape.com (Chris Waterson)
+ *   bigeasy at linutronix.de (Sebastian Andrzej Siewior)
  *
  * Alternatively, the contents of this file may be used under the terms of
  * either of the GNU General Public License Version 2 or later (the "GPL"),
  * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
  * in which case the provisions of the GPL or the LGPL are applicable instead
  * of those above. If you wish to allow use of your version of this file only
  * under the terms of either the GPL or the LGPL, and not to allow others to
  * use your version of this file under the terms of the MPL, indicate your
@@ -44,21 +45,24 @@
 #include "xptiprivate.h"
 
 // The Linux/PPC ABI (aka PPC/SYSV ABI) passes the first 8 integral
 // parameters and the first 8 floating point parameters in registers
 // (r3-r10 and f1-f8), no stack space is allocated for these by the
 // caller.  The rest of the parameters are passed in the callers stack
 // area. The stack pointer has to retain 16-byte alignment, longlongs
 // and doubles are aligned on 8-byte boundaries.
-
+#ifndef __NO_FPRS__
 #define PARAM_BUFFER_COUNT     16
 #define GPR_COUNT               8
 #define FPR_COUNT               8
-
+#else
+#define PARAM_BUFFER_COUNT      8
+#define GPR_COUNT               8
+#endif
 // PrepareAndDispatch() is called by SharedStub() and calls the actual method.
 //
 // - 'args[]' contains the arguments passed on stack
 // - 'gprData[]' contains the arguments passed in integer registers
 // - 'fprData[]' contains the arguments passed in floating point registers
 // 
 // The parameters are mapped into an array of type 'nsXPTCMiniVariant'
 // and then the method gets called.
@@ -93,38 +97,54 @@ PrepareAndDispatch(nsXPTCStubBase* self,
         dispatchParams = paramBuffer;
 
     NS_ASSERTION(dispatchParams,"no place for params");
     if (! dispatchParams)
         return NS_ERROR_OUT_OF_MEMORY;
 
     PRUint32* ap = args;
     PRUint32 gpr = 1;    // skip one GPR register
+#ifndef __NO_FPRS__
     PRUint32 fpr = 0;
+#endif
     PRUint32 tempu32;
     PRUint64 tempu64;
 
     for(i = 0; i < paramCount; i++) {
         const nsXPTParamInfo& param = info->GetParam(i);
         const nsXPTType& type = param.GetType();
         nsXPTCMiniVariant* dp = &dispatchParams[i];
 	
         if (!param.IsOut() && type == nsXPTType::T_DOUBLE) {
+#ifndef __NO_FPRS__
             if (fpr < FPR_COUNT)
                 dp->val.d = fprData[fpr++];
+#else
+            if (gpr & 1)
+                gpr++;
+            if (gpr + 1 < GPR_COUNT) {
+                dp->val.d = *(double*) &gprData[gpr];
+                gpr += 2;
+            }
+#endif
             else {
                 if ((PRUint32) ap & 4) ap++; // doubles are 8-byte aligned on stack
                 dp->val.d = *(double*) ap;
                 ap += 2;
             }
             continue;
         }
         else if (!param.IsOut() && type == nsXPTType::T_FLOAT) {
+#ifndef __NO_FPRS__
             if (fpr < FPR_COUNT)
                 dp->val.f = (float) fprData[fpr++]; // in registers floats are passed as doubles
+#else
+            if (gpr  < GPR_COUNT)
+                dp->val.f = *(float*) &gprData[gpr++];
+#endif
             else
                 dp->val.f = *(float*) ap++;
             continue;
         }
         else if (!param.IsOut() && (type == nsXPTType::T_I64
                                     || type == nsXPTType::T_U64)) {
             if (gpr & 1) gpr++; // longlongs are aligned in odd/even register pairs, eg. r5/r6
             if ((gpr + 1) < GPR_COUNT) {
-- 
1.5.6.5


--k1lZvvs/B4yU6o8G--



------------=_1279681569-15705-0
Content-Type: message/rfc822
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

Received: (at 586072-close) by bugs.debian.org; 21 Jul 2010 03:03:57 +0000
X-Spam-Checker-Version: SpamAssassin 3.2.5-bugs.debian.org_2005_01_02
	(2008-06-10) on busoni.debian.org
X-Spam-Level: 
X-Spam-Bayes: score:0.0000 Tokens: new, 101; hammy, 151; neutral, 323; spammy,
	0. spammytokens: hammytokens:0.000-+--HX-Debian:DAK,
	0.000-+--H*rp:D*ftp-master.debian.org, 0.000-+--HX-DAK:process-upload,
	0.000-+--HX-DAK:dak, 0.000-+--H*r:128.148.34
X-Spam-Status: No, score=-10.8 required=4.0 tests=AWL,BAYES_00,FOURLA,
	FROMDEVELOPER,FVGT_m_MULTI_ODD,HAS_BUG_NUMBER,IMPRONONCABLE_1,IMPRONONCABLE_2,
	MURPHY_WRONG_WORD1,MURPHY_WRONG_WORD2,PGPSIGNATURE,URIBL_CNKR autolearn=ham
	version=3.2.5-bugs.debian.org_2005_01_02
Return-path: <envelope at ftp-master.debian.org>
Received: from franck.debian.org ([128.148.34.3])
	from C=NA,ST=NA,L=Ankh Morpork,O=Debian SMTP,OU=Debian SMTP CA,CN=franck.debian.org,EMAIL=hostmaster at franck.debian.org (verified)
	by busoni.debian.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32)
	(Exim 4.69)
	(envelope-from <envelope at ftp-master.debian.org>)
	id 1ObPbB-0003qe-6x
	for 586072-close at bugs.debian.org; Wed, 21 Jul 2010 03:03:57 +0000
Received: from dak by franck.debian.org with local (Exim 4.69)
	(envelope-from <envelope at ftp-master.debian.org>)
	id 1ObPb8-0005Y6-Gh; Wed, 21 Jul 2010 03:03:54 +0000
From: Mike Hommey <glandium at debian.org>
To: 586072-close at bugs.debian.org
X-DAK: dak process-upload
X-Debian: DAK
X-Debian-Package: xulrunner
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit
Subject: Bug#586072: fixed in xulrunner 1.9.2.7-1
Message-Id: <E1ObPb8-0005Y6-Gh at franck.debian.org>
Sender: Archive Administrator <dak at franck.debian.org>
Date: Wed, 21 Jul 2010 03:03:54 +0000

Source: xulrunner
Source-Version: 1.9.2.7-1

We believe that the bug you reported is fixed in the latest version of
xulrunner, which is due to be installed in the Debian FTP archive:

libmozillainterfaces-java_1.9.2.7-1_all.deb
  to main/x/xulrunner/libmozillainterfaces-java_1.9.2.7-1_all.deb
libmozjs-dev_1.9.2.7-1_amd64.deb
  to main/x/xulrunner/libmozjs-dev_1.9.2.7-1_amd64.deb
libmozjs3d-dbg_1.9.2.7-1_amd64.deb
  to main/x/xulrunner/libmozjs3d-dbg_1.9.2.7-1_amd64.deb
libmozjs3d_1.9.2.7-1_amd64.deb
  to main/x/xulrunner/libmozjs3d_1.9.2.7-1_amd64.deb
spidermonkey-bin_1.9.2.7-1_amd64.deb
  to main/x/xulrunner/spidermonkey-bin_1.9.2.7-1_amd64.deb
xulrunner-1.9.2-dbg_1.9.2.7-1_amd64.deb
  to main/x/xulrunner/xulrunner-1.9.2-dbg_1.9.2.7-1_amd64.deb
xulrunner-1.9.2_1.9.2.7-1_amd64.deb
  to main/x/xulrunner/xulrunner-1.9.2_1.9.2.7-1_amd64.deb
xulrunner-dev_1.9.2.7-1_amd64.deb
  to main/x/xulrunner/xulrunner-dev_1.9.2.7-1_amd64.deb
xulrunner_1.9.2.7-1.debian.tar.gz
  to main/x/xulrunner/xulrunner_1.9.2.7-1.debian.tar.gz
xulrunner_1.9.2.7-1.dsc
  to main/x/xulrunner/xulrunner_1.9.2.7-1.dsc
xulrunner_1.9.2.7.orig.tar.bz2
  to main/x/xulrunner/xulrunner_1.9.2.7.orig.tar.bz2



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 586072 at bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Mike Hommey <glandium at debian.org> (supplier of updated xulrunner package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster at debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Wed, 21 Jul 2010 03:26:49 +0200
Source: xulrunner
Binary: xulrunner-1.9.2 libmozjs3d libmozjs-dev libmozjs3d-dbg spidermonkey-bin xulrunner-dev xulrunner-1.9.2-dbg libmozillainterfaces-java
Architecture: source amd64 all
Version: 1.9.2.7-1
Distribution: experimental
Urgency: high
Maintainer: Maintainers of Mozilla-related packages <pkg-mozilla-maintainers at lists.alioth.debian.org>
Changed-By: Mike Hommey <glandium at debian.org>
Description: 
 libmozillainterfaces-java - XPCOM bindings for Java
 libmozjs-dev - Development files for the Mozilla SpiderMonkey JavaScript library
 libmozjs3d - The Mozilla SpiderMonkey JavaScript library
 libmozjs3d-dbg - Development files for the Mozilla SpiderMonkey JavaScript library
 spidermonkey-bin - standalone JavaScript/ECMAScript (ECMA-262) interpreter
 xulrunner-1.9.2 - XUL + XPCOM application runner
 xulrunner-1.9.2-dbg - Debugging symbols for the Gecko engine library
 xulrunner-dev - Development files for the Gecko engine library
Closes: 581384 586072 587636 587637 587639
Changes: 
 xulrunner (1.9.2.7-1) experimental; urgency=high
 .
   * New upstream release.
   * Fixes mfsa-2010-{34-47}, also known as
     CVE-2010-1211, CVE-2010-1212, CVE-2010-1208, CVE-2010-1209,
     CVE-2010-1214, CVE-2010-1215, CVE-2010-2752, CVE-2010-2753,
     CVE-2010-1205, CVE-2010-1213, CVE-2010-1207, CVE-2010-1210,
     CVE-2010-2751, CVE-2010-0654, CVE-2010-2754.
 .
   * debian/control*:
     - Add build-depends on libglib2.0-dev (>= 2.18.0) for filemonitor.
       Closes: #587636.
     - Bump libnss build-depends to fit what configure is looking for.
       Closes: #587637.
     - Remove conflict/replace for very old packages.
     - Bump Standards-Version to 3.9.0.0.
     - Fit the Uploaders field to reality.
   * debian/mozconfig.in, debian/rules: Check if mozconfig system library
     options will properly set the right variables. Closes: #587639
   * debian/reftest-app/application.ini: Set a MaxVersion in our reftest-app
     application.ini.
   * debian/extra-stuff/Makefile.in: Use Preprocessor.py instead of
     preprocessor.pl in debian/extra-stuff.
   * debian/rules:
     - Only set -std=gnu++0x flag when using g++ 4.4+.
     - Don't install dependentlibs.list.
     - Bump shlibs.
   * debian/libmozjsSO_VERSION.symbols.in: Add new symbols.
 .
   * xpcom/reflect/xptcall/src/md/unix/*ppc_linux*: Add support for powerpcspe.
     Closes: #586072.
   * xulrunner/installer/mozilla-plugin.pc.in: Fix mozilla-plugin.pc.in CFLAGS.
     Closes: #581384.
   * modules/plugin/Makefile.in: Build the test plugin on GNU/kfreebsd.
Checksums-Sha1: 
 01b705be3f7e46b69b39c95591c4e8c54a4ea50a 2045 xulrunner_1.9.2.7-1.dsc
 a2ff5bb11ab8fe34215362c72ad592b64df8a519 46279617 xulrunner_1.9.2.7.orig.tar.bz2
 d65f1c1ac1ba54128d90d4f2d89f39752dfdc46d 202585 xulrunner_1.9.2.7-1.debian.tar.gz
 1724bb88d9d1bb07a780ca81ca96f6e6e461f1f4 9042468 xulrunner-1.9.2_1.9.2.7-1_amd64.deb
 59aa90e3e179d4edcd9d1305a9c19126b5ffcd95 733430 libmozjs3d_1.9.2.7-1_amd64.deb
 d30b685ec4eebe3d5be10c284a00137c3d56d791 322248 libmozjs-dev_1.9.2.7-1_amd64.deb
 cbdb1894238b25cec87385156104bd65241f7e2d 2452618 libmozjs3d-dbg_1.9.2.7-1_amd64.deb
 5a895c065b9f51b5ef69d90f8e310cd705e94b75 85652 spidermonkey-bin_1.9.2.7-1_amd64.deb
 15255f3eb310aaae4222ad7ed0300d0871a4fe58 3515236 xulrunner-dev_1.9.2.7-1_amd64.deb
 db41c55ec6ce036ffdbddfbc66aee186300b0db7 59909658 xulrunner-1.9.2-dbg_1.9.2.7-1_amd64.deb
 54a4cc7868932c24d1d5d9681e795c0b07cb145c 1581584 libmozillainterfaces-java_1.9.2.7-1_all.deb
Checksums-Sha256: 
 f4934cd8a3d54f7d11ba12fe979709e2e61cd8a0413113f1be35404524cf68a8 2045 xulrunner_1.9.2.7-1.dsc
 a6105f3d5e4e370762ac6d07a7b58817805bf014c5344587b936c55aeb5acc1f 46279617 xulrunner_1.9.2.7.orig.tar.bz2
 cdf3ca207f3656a1f339f15c8ea44a85fabc1c7e3b71bc8232b13147e1ad4323 202585 xulrunner_1.9.2.7-1.debian.tar.gz
 2f6f89a205c87be741e3736f9a08365c8282c1fd17bcdf3b1b519b4762ee8657 9042468 xulrunner-1.9.2_1.9.2.7-1_amd64.deb
 895a47b9eb9dd4a9977558bd0491dcc0730d8531ed58efacff16111c5f1a2262 733430 libmozjs3d_1.9.2.7-1_amd64.deb
 c60b15aaaab7c152536a4e1c930a3f223a14ece4051fe19b2e00e1a08866c9f0 322248 libmozjs-dev_1.9.2.7-1_amd64.deb
 faf0510461166a2644fd8eaa0cbf0e47222dc7cdaa97f4bc13748bd3af0f8dcf 2452618 libmozjs3d-dbg_1.9.2.7-1_amd64.deb
 65e918916ef799b4009fcbf1020eb5e4ae7d33bead0183b7bf92301032215936 85652 spidermonkey-bin_1.9.2.7-1_amd64.deb
 4c32a320a7c451211de0312bbb5bb4271bd7c55fc9f638e30d6053d9f413c4c6 3515236 xulrunner-dev_1.9.2.7-1_amd64.deb
 b71b9928633a27c4ce2b42fbfb6b84afd6ed4fd9994bc332956b1f6fc4f0229e 59909658 xulrunner-1.9.2-dbg_1.9.2.7-1_amd64.deb
 db9a2a7ca8ad3fecc782f0ab22345c039c4fef39f4ba7f707b01eb2925bd33e1 1581584 libmozillainterfaces-java_1.9.2.7-1_all.deb
Files: 
 202e1729ecca3e1f4c8248b8833eccfe 2045 devel optional xulrunner_1.9.2.7-1.dsc
 66e3c93aed9c2413443f9b78b4faebe4 46279617 devel optional xulrunner_1.9.2.7.orig.tar.bz2
 f76c9f9cd09a7a9ab00adeb6c6bcb65c 202585 devel optional xulrunner_1.9.2.7-1.debian.tar.gz
 72edc79d64d79734223aa48f69f307b8 9042468 libs optional xulrunner-1.9.2_1.9.2.7-1_amd64.deb
 8f5a20991ca51207165a6351a920d703 733430 libs optional libmozjs3d_1.9.2.7-1_amd64.deb
 77619b157c2a689e1a64da45ca5b9679 322248 libdevel optional libmozjs-dev_1.9.2.7-1_amd64.deb
 8e37bdd3d9c35d823e3bee783269953f 2452618 debug extra libmozjs3d-dbg_1.9.2.7-1_amd64.deb
 81e7b5512ca04da710d6dcd794effded 85652 interpreters optional spidermonkey-bin_1.9.2.7-1_amd64.deb
 3665c5a91648874b5f862af0463ea29f 3515236 libdevel optional xulrunner-dev_1.9.2.7-1_amd64.deb
 c5a446f83cabe95428614ed71201977c 59909658 debug extra xulrunner-1.9.2-dbg_1.9.2.7-1_amd64.deb
 4b62ba12ac926ad5219e12f65d9ac016 1581584 java extra libmozillainterfaces-java_1.9.2.7-1_all.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

iD8DBQFMRl3n3kvaLFT9KlgRAlD1AKCVFb3+OGtWVvnJnP07uYReiVG9IACeJiy1
ujpTkJxVqb4nFYySUSlCq9w=
=RtKD
-----END PGP SIGNATURE-----



------------=_1279681569-15705-0--



More information about the pkg-mozilla-maintainers mailing list