After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 691709 - compilation on armv7a fails: {standard input}:655: Error: immediate value out of range -- `movt ip,-32640'
compilation on armv7a fails: {standard input}:655: Error: immediate value out...
Status: RESOLVED NOTGNOME
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
1.0.5
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2013-01-14 12:00 UTC by jannis-lists
Modified: 2013-01-14 12:53 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description jannis-lists 2013-01-14 12:00:42 UTC
Please see related Gentoo bug at https://bugs.gentoo.org/show_bug.cgi?id=451920 
mainly the attachment build.log
Comment 1 Tim-Philipp Müller 2013-01-14 12:21:12 UTC
It seems that gst-plugins-base 1.0.3 is actually built, not 1.0.5. (Not that I think it will make a difference for this particular issue, just saying).

> {standard input}: Assembler messages:
> {standard input}:655: Error: immediate value out of range -- `movt ip,-32640'
> make[5]: *** [libgstvideo_1.0_la-tmp-orc.lo] Error 1

This happens whilst compiling a plain .c file, so I would say this is a toolchain/compiler bug.
Comment 2 jannis-lists 2013-01-14 12:26:58 UTC
You're right, the specific logfile is from 1.0.3, I retried with 1.0.5, got the same error and updated the bug's title w/o uploading a new logfile.
What I think is strange:
the line just below the error states: make[5]: *** [libgstvideo_1.0_la-tmp-orc.lo] Error 1
so it looks to me like orc-optimization is enabled while "--disable-orc" is specified on the configure command line (and the build log states this again: "Orc acceleration disabled by --disable-orc.  Slower code paths will be used.")

I honestly don't know anything about orc, what it is and does but might it be it only works on x86/x86_64 and that's why the assembler (not the compiler) throws up here?

unfortunately the arm-box is powered off at home now so I can't directly work on it
Comment 3 Tim-Philipp Müller 2013-01-14 12:36:27 UTC
liborc generates machine code at runtime. What is being compiled here are the backup functions, which are plain C, and get used when liborc is not available or disabled, or when liborc couldn't generate code at runtime for a certain orc function (e.g. because there aren't enough registers, or an opcode isn't mapped for the specific architecture).
Comment 4 jannis-lists 2013-01-14 12:53:36 UTC
Indeed, this looks like a bug in gcc. A bit of searching around on the net confirms this. Maybe it's time I install gcc-4.6 on that machine. Thanks for the help anyways :)