Bug#840468: mame: FTBFS[arm64]: immediate value out of range 0 to 63

Steven Chamberlain stevenc at debian.org
Tue Oct 11 21:10:53 UTC 2016


Package: src:mame
Version: 0.178-1
Severity: serious
Justification: FTBFS, but built successfully in the past

Hi,

On linux-arm64, mame since 0.176-3 FTBFS, because:

https://buildd.debian.org/status/fetch.php?pkg=mame&arch=arm64&ver=0.178-1&stamp=1475578747
| Compiling src/emu/emumem.cpp...
| g++ -g -O2 -fdebug-prefix-map=/«PKGBUILDDIR»=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -g0 -O2 -fdebug-prefix-map=/«PKGBUILDDIR»=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wdate-time -D_FORTIFY_SOURCE=2 -MMD -MP -MP -DNDEBUG -DCRLF=2 -DLSB_FIRST -DXMD_H -DFLAC__NO_DLL -DMAME_NOASM -DLUA_COMPAT_ALL -DLUA_COMPAT_5_1 -DLUA_COMPAT_5_2 -DPTR64=1 -DNO_AFFINITY_NP -I../../../../../src/osd -I../../../../../src/emu -I../../../../../src/lib -I../../../../../src/lib/util -I../../../../../3rdparty -I../../../../generated/emu -I../../../../generated/emu/layout -I../../../../../scripts/src   -pipe -Wno-deprecated-declarations -O3 -fno-strict-aliasing -mabi=lp64 -Wno-unknown-pragmas -Wall -Wcast-align -Wundef -Wformat-security -Wwrite-strings -Wno-sign-compare -Wno-conversion -Wno-unused-result -Wno-array-bounds -Wno-cast-align -x c++ -std=c++14 -Woverloaded-virtual -Wsuggest-override -flifetime-dse=1 -include obj/Release/emu.h -o "obj/Release/src/emu/emumem.o" -c "../../../../../src/emu/emumem.cpp"
| {standard input}:28638: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,64,16'
| {standard input}:28643: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,80,16'
| {standard input}:28648: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,96,16'
| {standard input}:28653: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,112,16'
| {standard input}:28658: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,128,16'
| {standard input}:28663: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,144,16'
| {standard input}:28668: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,160,16'
| {standard input}:28673: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,176,16'
| {standard input}:28678: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,192,16'
| {standard input}:28683: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,208,16'
| {standard input}:28688: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,224,16'
| {standard input}:31708: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,64,32'
| {standard input}:31713: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,96,32'
| {standard input}:31718: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,128,32'
| {standard input}:31723: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,160,32'
| {standard input}:31728: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,192,32'
| {standard input}:32454: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,64,16'
| {standard input}:32459: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,80,16'
| {standard input}:32464: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,96,16'
| {standard input}:32469: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,112,16'
| {standard input}:32474: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,128,16'
| {standard input}:32479: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,144,16'
| {standard input}:32484: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,160,16'
| {standard input}:32489: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,176,16'
| {standard input}:32494: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,192,16'
| {standard input}:32499: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,208,16'
| {standard input}:32504: Error: immediate value out of range 0 to 63 at operand 3 -- `ubfx x0,x2,224,16'
| make[4]: *** [obj/Release/src/emu/emumem.o] Error 1
| Makefile:46: recipe for target 'emu' failed
| make[3]: *** [emu] Error 2
| make[3]: *** Waiting for unfinished jobs....

ubfx is the ARM Thumb-2 instruction for "unsigned bit field extract".
I don't really know what that means, but notice the operands are
increasing by 16 each time, and expected values are in the range
[0..63].  So I would guess the problem relates to this 16x64 array in
src/emu/emumem.cpp:

 201 static char *core_i64_hex_format(UINT64 value, UINT8 mindigits)
 202 {
 203         static char buffer[16][64];

Thanks.

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: kfreebsd-amd64 (x86_64)

Kernel: kFreeBSD 10.1-0-amd64
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)



More information about the Pkg-games-devel mailing list