• Home
  • Help
  • Search
  • Login
  • Register
Pages: [1]
Author Topic: [SOLVED] Does this chip support 'pld' instruction?  (Read 3183 times)
CharlesWGreenJr
Newbie
*

Karma: 0
Posts: 28



View Profile
« on: May 04, 2009, 06:14:37 PM »

While building mythtv-backend on the plug, I hit the following message, which leads me to believe that either the compiler isn't aware of exactly which instruction set to use, or that the chip in the SheevaPlug doesn't support the 'pld' instruction:

Code:
gcc -c -pipe -g -fomit-frame-pointer -O3 -pthread -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -w -D_REENTRANT -DPIC -fPIC  -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_AV_CONFIG_H -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I.. -I../.. -I../libavutil -I../libswscale -I/usr/include/qt3 -o dsputil_arm_s.o armv4l/dsputil_arm_s.S
armv4l/dsputil_arm_s.S: Assembler messages:
armv4l/dsputil_arm_s.S:79: Error: selected processor does not support `pld [r1]'

From sniffing around it appears this is a 'preload' instruction which can be used to optimize execution, and is apparently optional; i.e., it can be removed without harming anything (though potentially slowing things down on a processor which supports it).  Also, it seems that some ARM architectures support it, and some don't.

I got the compiler onto my plug via 'apt-get install build-essential'; is any sort of configuration required for it to build code for the correct processor?  I've seen references to -mcpu and -march command line switches for the compiler; has anyone been able to build any assembly-level code using this compiler and instruction?

In the absence of any insights, I may just hack the instructions out, but I'm hopeful there's a cleaner way to resolve this.

Thanks, as always, for any pointers or suggestions,

Charles Green
« Last Edit: June 11, 2009, 01:44:38 PM by CharlesWGreenJr » Logged

cbxbiker61
Global Moderator
Sr. Member
*****

Karma: 38
Posts: 497


View Profile
« Reply #1 on: May 04, 2009, 06:20:28 PM »

In theory if you use "-march=armv5te" you should have pld support.  Give that a try.
Logged

CharlesWGreenJr
Newbie
*

Karma: 0
Posts: 28



View Profile
« Reply #2 on: May 05, 2009, 06:13:29 PM »

Thanks!  I put it into the mythconfig.mak file as ARCHFLAGS=-march=armv5te.  That got me to the point where it says it needs -lXv (and, no doubt, a bunch of other dependencies just now coming out of the woodwork) - I'm a bit surprised a *backend* would need -lX*, but that's the subject of another weekend...

Thanks again!

-Charles Green
Logged

Pages: [1]
Print
Jump to: