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 743082 - orc: test-limits fails: no temporary registers available
orc: test-limits fails: no temporary registers available
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: orc
unspecified
Other Windows
: Normal normal
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-01-17 11:20 UTC by LRN
Modified: 2016-05-31 21:17 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description LRN 2015-01-17 11:20:23 UTC
Windows NT 6.1.7601 x86_64, i686-w64-mingw32-gcc-4.9.2

orc 0.4.23 (same failure did occur with 0.4.21 too, back in the day), compiled with -g -O2 -fno-omit-frame-pointer, default configuration. Configure enabled backends: altivec, c64x, mips, mmx, neon, see

Orc 0.4.23 - integrated testing tool
Active backend: sse
L1 cache: 32768
L2 cache: 262144
L3 cache: 8388608
Family/Model/Stepping: 6/42/7
CPU name:        Intel(R) Core(TM) i7-2600K CPU @ 3.40GHz
Compiler options: sse2 sse3 ssse3 sse41 sse42
Opcode test:
No errors detected.

test-limits fails (specifically - the last test_simple (ORC_MAX_ACCUM_VARS, orc_program_add_accumulator); test).

orc_compiler_error_valist (args=0x28fcd8 "?u?eA\002", fmt=fmt@entry=0x658df7ec <__PRETTY_FUNCTION__.6126+754> "no temporary register available", compiler=0x530048) at ../../orc-0.4.23/orc/orccompiler.c:1214
1214      compiler->result = ORC_COMPILE_RESULT_UNKNOWN_COMPILE;
(gdb) l
1209
1210      s = malloc (ORC_COMPILER_ERROR_BUFFER_SIZE);
1211      vsprintf (s, fmt, args);
1212      compiler->error_msg = s;
1213      compiler->error = TRUE;
1214      compiler->result = ORC_COMPILE_RESULT_UNKNOWN_COMPILE;
1215    }
1216
1217    void
1218    orc_compiler_error (OrcCompiler *compiler, const char *fmt, ...)
(gdb) p compiler->error_msg
$16 = 0x5467b8 "no temporary register available"
(gdb) bt
  • #0 orc_compiler_error_valist
    at ../../orc-0.4.23/orc/orccompiler.c line 1214
  • #1 orc_compiler_error
    at ../../orc-0.4.23/orc/orccompiler.c line 1223
  • #2 orc_compiler_get_temp_reg
    at ../../orc-0.4.23/orc/orccompiler.c line 716
  • #3 sse_save_accumulators
    at ../../orc-0.4.23/orc/orcprogram-sse.c line 286
  • #4 orc_compiler_sse_assemble
    at ../../orc-0.4.23/orc/orcprogram-sse.c line 984
  • #5 orc_program_compile_full
    at ../../orc-0.4.23/orc/orccompiler.c line 352
  • #6 orc_program_compile_for_target
    at ../../orc-0.4.23/orc/orccompiler.c line 173
  • #7 orc_program_compile
    at ../../orc-0.4.23/orc/orccompiler.c line 150
  • #8 test_simple
    at ../../orc-0.4.23/testsuite/test-limits.c line 37
  • #9 main
    at ../../orc-0.4.23/testsuite/test-limits.c line 67

Comment 1 Vincent Penquerc'h 2015-01-29 14:14:35 UTC
Works here with the SSE backend on latest orc master, Linux.
Comment 2 Tim-Philipp Müller 2016-05-31 17:02:32 UTC
Not quite sure what to make of this. Nothing obviously wrong in the code at first glance.

How does it "fail" exactly? Is it crashing? Is it erroring out with an unexpected return value? Obviously these compiler failures are all expected.

Does it still happen with latest release?
Comment 3 LRN 2016-05-31 18:14:34 UTC
"fails" means that the test does not succeed.
orc_program_compile (p) returns ORC_COMPILE_RESULT_UNKNOWN_COMPILE, and test_simple() sets error to TRUE, thus the testcase fails.

0.4.25 is not affected.
Comment 4 Tim-Philipp Müller 2016-05-31 18:29:28 UTC
> 0.4.25 is not affected.

So it's fixed in 0.4.25? Can we close this then?
Comment 5 LRN 2016-05-31 21:11:03 UTC
Yes.
Comment 6 Tim-Philipp Müller 2016-05-31 21:17:03 UTC
Great, thanks.