[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [OpenDivX] Strange problems on the ARM platform



On Tue, 22 May 2001, Lionel Ulmer wrote:

> > This means to whomever has write priviledges to the CVS tree need to add a
> > new define to the Linux Makefile (like NO_UNALIGNED_ACCESSES) and change
> > in basic_predictions.c the '#ifdef BIG_ENDIAN' by
> > '#if defined(BIG_ENDIAN) or defined(NO_UNALIGNED_ACCESSES)' (or the correct
> > preprocessor command, I am a bit rusty on this point :-) ).
>
> By the way, I just tested on a big endian platform (Sun UltraSPARC), and
> copying by doing a cast to 'long *' works also very well...
>
> So the #ifdef need to change from BIG_ENDIAN to NO_UNALIGNED_ACCESSES. No
> need to add the 'or' as told in my previous mail.

My SUN UltraSPARC crashes at unaligned memory access, unless you
give the   -misalign   flag to the compiler. But I think that slows things
down. Still, a NO_UNALIGNED_ACCESS flag is of course the cleaner way.
Memcopy-routines may still be optimized anyway, to use aligned access
as often as possible. It's a lot faster on intel as well...

gruel

-- 
Dipl. math. Christoph Lampert (complex analysis, integral formulae)

Gibraltargatan 86                  |     CTH, Matematiskt centrum
rum 637                            |     Eklandagatan 86, rum 2235
41279 Gothenburg                   |     41296 Gothenburg
SWEDEN                             |     SWEDEN
Email: [email protected]                |     Email: [email protected]
                                   | 	 Tel. +46 31 772 5323 (office)


_______________________________________________
OpenDivX mailing list
[email protected]
http://lists.projectmayo.com/mailman/listinfo/opendivx
>From [email protected] Wed May 23 14:06:41 2001
Received: from hoggle.dreamhost.com (hoggle.dreamhost.com [209.85.245.5])
	by eclipse.pacifier.com (8.11.2/8.11.1) with ESMTP id f4NL6X503723
	for <[email protected]>; Wed, 23 May 2001 14:06:33 -0700 (PDT)
Received: from lists.projectmayo.com (host13910.servervault.com [216.12.139.10])
        by hoggle.dreamhost.com (8.12.0.Beta5/8.12.0.Beta5/Debian 8.12.0-1) with ESMTP id f4NL6qiG017537
        for <[email protected]>; Wed, 23 May 2001 14:06:53 -0700
Received: from localhost.localdomain (sv100063 [127.0.0.1])
	by lists.projectmayo.com (Postfix) with ESMTP
	id 12F633C28; Wed, 23 May 2001 21:05:06 +0000 (GMT)
Delivered-To: [email protected]
Received: from mail.absolutesys.com (ns.absolutesys.com [196.30.131.68])
	by lists.projectmayo.com (Postfix) with ESMTP id AEE9C3C16
	for <[email protected]>; Wed, 23 May 2001 13:16:46 +0000 (GMT)
Received: from dogmatix.absolutesys.com ([192.168.1.109] helo=dogmatix)
	by mail.absolutesys.com with smtp (Exim 3.13 #1)
	id 152YpM-0006XY-00; Wed, 23 May 2001 15:37:28 +0200
From: "Stuart Robertson" <[email protected]>
To: <[email protected]>
Message-ID: <[email protected]>
MIME-Version: 1.0
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Priority: 3 (Normal)
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2911.0)
Importance: Normal
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400
Subject: [OpenDivX] Missing files in opendivx CVS repository and a missing macro definition in mmx/mmx.h
Sender: [email protected]
Errors-To: [email protected]
X-BeenThere: [email protected]
X-Mailman-Version: 2.0
Precedence: bulk
List-Help: <mailto:[email protected]?subject=help>
List-Post: <mailto:[email protected]>
List-Subscribe: <http://lists.projectmayo.com/mailman/listinfo/opendivx>,
	<mailto:[email protected]?subject=subscribe>
List-Id: This is the OpenDivX discussion list! <opendivx.lists.projectmayo.com>
List-Unsubscribe: <http://lists.projectmayo.com/mailman/listinfo/opendivx>,
	<mailto:[email protected]?subject=unsubscribe>
List-Archive: <http://lists.projectmayo.com/pipermail/opendivx/>
Date: Wed, 23 May 2001 15:16:33 +0200
Content-Length: 1497
Status: O

Hello,

I am trying to build the latest libdivxdecore on Linux.  I got the latest
sources from opendivx CVS repository.  In the process I found two problems.

1. MISSING FILES IN OPENDIVX CVS REPOSITORY:
There are two files missing (they *definitely* aren't in CVS).

The missing files are:

   divxcore/decore/src/timer.c
   divxcore/decore/src/mmx/yuv2rgb_mmx.c

Both files are referred to by divxcore/decore/src/Makefile.am (snippets of
which are shown below):

  libopendivx_decore_la_SOURCES= basic_prediction.c clearblock.c debug.c \
  decore.c timer.c \

  yuv2rgb_mmx.lo: mmx/yuv2rgb_mmx.c
      $(CC) -g -Wall -fPIC -D_ATT_SYNTAX -I. -I.. -c $< -o [email protected]

Removing -DPROFILING from CFLAGS causes timer.h to use the inlined no-op
timer functions, but that isn't the point.  I still need yuv2rgb_mmx.c.

Please can someone put the missing files into CVS and inform the list when
this is done.

2. MISSING MACRO DEFINITION IN MMX/MMX.H:
The file divxcore/decore/src/mmx/basic_prediction_mmx.c contains 6
invocations of the (undefined) macro paddb_i2r.  This macro is not defined
in mmx.h (where I suppose it should be).

I guess the correct macro definition for paddb_i2r would be the following:

  #define paddb_i2r(imm, reg)   mmx_i2r(paddb, imm, reg)

Please can someone make the correction and update mmx.h in CVS.

Regards,
Stuart.


_______________________________________________
OpenDivX mailing list
[email protected]
http://lists.projectmayo.com/mailman/listinfo/opendivx


Reply To Poster

Local References / HOW-TO / FAQs