From 3caf37153e367e0a8dfba8c94d3289bee5d426f8 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Aug 01 2017 03:24:34 +0000 Subject: import orc-0.4.26-1.el7 --- diff --git a/.gitignore b/.gitignore index 2e46a98..5edddf6 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/orc-0.4.22.tar.xz +SOURCES/orc-0.4.26.tar.xz diff --git a/.orc.metadata b/.orc.metadata index 4c7902c..ebd50a1 100644 --- a/.orc.metadata +++ b/.orc.metadata @@ -1 +1 @@ -c50cf2f2a9a7e4ab400fd79f706e831ace1936bc SOURCES/orc-0.4.22.tar.xz +8a735b48051facb35b2b2cc57e8e2014a1e25c8a SOURCES/orc-0.4.26.tar.xz diff --git a/SOURCES/0001-compiler-also-prefer-the-backup-function-when-no-tar.patch b/SOURCES/0001-compiler-also-prefer-the-backup-function-when-no-tar.patch deleted file mode 100644 index 51b2ea6..0000000 --- a/SOURCES/0001-compiler-also-prefer-the-backup-function-when-no-tar.patch +++ /dev/null @@ -1,27 +0,0 @@ -From ce99e244faff3cae27b2e3511febd8bdc5bd0e03 Mon Sep 17 00:00:00 2001 -From: Wim Taymans -Date: Mon, 7 Sep 2015 13:43:55 +0200 -Subject: [PATCH] compiler: also prefer the backup function when no target - -If we don't have a compiler target (like for ppc64), prefer to use the -backup function instead of doing full emulation. ---- - orc/orccompiler.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/orc/orccompiler.c b/orc/orccompiler.c -index 0086f77..0c2ff23 100644 ---- a/orc/orccompiler.c -+++ b/orc/orccompiler.c -@@ -318,7 +318,7 @@ orc_program_compile_full (OrcProgram *program, OrcTarget *target, - program->orccode->vars[i].value = compiler->vars[i].value; - } - -- if (program->backup_func && _orc_compiler_flag_backup) { -+ if (program->backup_func && (_orc_compiler_flag_backup || target == NULL)) { - orc_compiler_error (compiler, "Compilation disabled, using backup"); - compiler->result = ORC_COMPILE_RESULT_UNKNOWN_COMPILE; - goto error; --- -2.4.3 - diff --git a/SOURCES/0001-executor-fix-load-of-parameters-smaller-than-64-bits.patch b/SOURCES/0001-executor-fix-load-of-parameters-smaller-than-64-bits.patch deleted file mode 100644 index 90bb37b..0000000 --- a/SOURCES/0001-executor-fix-load-of-parameters-smaller-than-64-bits.patch +++ /dev/null @@ -1,38 +0,0 @@ -From e2b4dd77dec4e3f471b59336ef99b1151638ad38 Mon Sep 17 00:00:00 2001 -From: Wim Taymans -Date: Mon, 7 Sep 2015 15:30:36 +0200 -Subject: [PATCH] executor: fix load of parameters smaller than 64 bits - -Parameters less than 64 bits are passed in just one param register. -Fixes crashes on ldresnearb and friends in emulated code. ---- - orc/orcexecutor.c | 13 +++++++++---- - 1 file changed, 9 insertions(+), 4 deletions(-) - -diff --git a/orc/orcexecutor.c b/orc/orcexecutor.c -index 6fe296d..6306d34 100644 ---- a/orc/orcexecutor.c -+++ b/orc/orcexecutor.c -@@ -295,10 +295,15 @@ orc_executor_emulate (OrcExecutor *ex) - } else if (var->vartype == ORC_VAR_TYPE_PARAM) { - opcode_ex[j].src_ptrs[k] = tmpspace[insn->src_args[k]]; - /* FIXME hack */ -- load_constant (tmpspace[insn->src_args[k]], 8, -- (orc_uint64)(orc_uint32)ex->params[insn->src_args[k]] | -- (((orc_uint64)(orc_uint32)ex->params[insn->src_args[k] + -- (ORC_VAR_T1 - ORC_VAR_P1)])<<32)); -+ if (var->size == 8) { -+ load_constant (tmpspace[insn->src_args[k]], 8, -+ (orc_uint64)(orc_uint32)ex->params[insn->src_args[k]] | -+ (((orc_uint64)(orc_uint32)ex->params[insn->src_args[k] + -+ (ORC_VAR_T1 - ORC_VAR_P1)])<<32)); -+ } else { -+ load_constant (tmpspace[insn->src_args[k]], 8, -+ ex->params[insn->src_args[k]]); -+ } - } else if (var->vartype == ORC_VAR_TYPE_TEMP) { - opcode_ex[j].src_ptrs[k] = tmpspace[insn->src_args[k]]; - } else if (var->vartype == ORC_VAR_TYPE_SRC) { --- -2.4.3 - diff --git a/SOURCES/0001-orcc-program-c-fix-64-bit-parameter-loading-loadpq-o.patch b/SOURCES/0001-orcc-program-c-fix-64-bit-parameter-loading-loadpq-o.patch deleted file mode 100644 index 8171ba1..0000000 --- a/SOURCES/0001-orcc-program-c-fix-64-bit-parameter-loading-loadpq-o.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 29486d8c98655a6e14ec2af9f71489cbdda41a53 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= -Date: Sat, 8 Nov 2014 13:23:12 +0000 -Subject: [PATCH] orcc: program-c: fix 64-bit parameter loading (loadpq) on - big-endian systems - -When passing 64-bit parameters through OrcExecutor, we -have to split them up into two 32-bit parameters for -backwards compatibility reasons. When generating C code, -make sure that we split up 64-bit parameters in the same -way as loadpq will read them back later. The lower 32 bits -should end up in params[ORC_VAR_D1+i] and the higher bits -should end up in params[ORC_VAR_T1+i]. The way it was done -so far, the higher/lower bits ended up swapped on big endian -systems, and then got deserialised in swapped order by loadpq. -This resulted in bogus parameters being used. - -In particular, this broke the gstreamer volume element and -its unit tests on big endian systems when handling samples -in F64 format (i.e. doubles). - -https://bugzilla.gnome.org/show_bug.cgi?id=739354 ---- - tools/orcc.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/tools/orcc.c b/tools/orcc.c -index d25b548..fdab530 100644 ---- a/tools/orcc.c -+++ b/tools/orcc.c -@@ -843,9 +843,9 @@ output_code_execute (OrcProgram *p, FILE *output, int is_inline) - fprintf(output, " {\n"); - fprintf(output, " orc_union64 tmp;\n"); - fprintf(output, " tmp.i = %s;\n", varnames[ORC_VAR_P1 + i]); -- fprintf(output, " ex->params[%s] = tmp.x2[0];\n", -+ fprintf(output, " ex->params[%s] = ((orc_uint64) tmp.i) & 0xffffffff;\n", - enumnames[ORC_VAR_P1 + i]); -- fprintf(output, " ex->params[%s] = tmp.x2[1];\n", -+ fprintf(output, " ex->params[%s] = ((orc_uint64) tmp.i) >> 32;\n", - enumnames[ORC_VAR_T1 + i]); - fprintf(output, " }\n"); - break; -@@ -854,9 +854,9 @@ output_code_execute (OrcProgram *p, FILE *output, int is_inline) - fprintf(output, " {\n"); - fprintf(output, " orc_union64 tmp;\n"); - fprintf(output, " tmp.f = %s;\n", varnames[ORC_VAR_P1 + i]); -- fprintf(output, " ex->params[%s] = tmp.x2[0];\n", -+ fprintf(output, " ex->params[%s] = ((orc_uint64) tmp.i) & 0xffffffff;\n", - enumnames[ORC_VAR_P1 + i]); -- fprintf(output, " ex->params[%s] = tmp.x2[1];\n", -+ fprintf(output, " ex->params[%s] = ((orc_uint64) tmp.i) >> 32;\n", - enumnames[ORC_VAR_T1 + i]); - fprintf(output, " }\n"); - break; --- -2.4.3 - diff --git a/SOURCES/0001-test-limits-improve-test-without-target.patch b/SOURCES/0001-test-limits-improve-test-without-target.patch deleted file mode 100644 index b3662e1..0000000 --- a/SOURCES/0001-test-limits-improve-test-without-target.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 3298a5520d5ac4ec331b0b3b7a2211d4d94172cf Mon Sep 17 00:00:00 2001 -From: Wim Taymans -Date: Wed, 12 Aug 2015 13:16:28 +0200 -Subject: [PATCH] test-limits: improve test without target - -When there is no target available, the unit test would fail with a -non-fatal error (because emulation would be done). The non-fatal error -would however not be overwritten by the real error when we exceed the -limits. - -First relax the first compilation test to check for FATAL errors. Then -reset the program (and clear any non-fatal errors) before triggering -the next error. ---- - testsuite/test-limits.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/testsuite/test-limits.c b/testsuite/test-limits.c -index ed19d8a..0e43924 100644 ---- a/testsuite/test-limits.c -+++ b/testsuite/test-limits.c -@@ -35,9 +35,11 @@ test_simple (int max, int (*adder) (OrcProgram *, int, const char *)) - for (v = 0; v < max; v++) - (*adder) (p, 2, names + v); - result = orc_program_compile (p); -- if (!ORC_COMPILE_RESULT_IS_SUCCESSFUL (result)) -+ if (ORC_COMPILE_RESULT_IS_FATAL (result)) - error = TRUE; - -+ orc_program_reset (p); -+ - /* Check we can not add one more */ - (*adder) (p, 2, names + v); - result = orc_program_compile (p); --- -2.4.3 - diff --git a/SOURCES/orc-selinux-tmplocation.patch b/SOURCES/orc-selinux-tmplocation.patch deleted file mode 100644 index 228bbc1..0000000 --- a/SOURCES/orc-selinux-tmplocation.patch +++ /dev/null @@ -1,45 +0,0 @@ -commit 0e31d7fc6a03faf1076dfd51b49401539c3ebed9 -Author: Fabian Deutsch -Date: Tue Sep 2 10:38:17 2014 +0200 - - TMPDIR becomes the last option - - Previously $TMPDIR and /tmp were the first options to try to use for - intermediate files. To prevent name collisions, now user specific dirs ($HOME - and $XDG_RUNTIME_DIR) are prefered over the user unspecific dirs ($TMP and - /tmp). - - https://bugzilla.gnome.org/show_bug.cgi?id=735871 - -diff --git a/orc/orccodemem.c b/orc/orccodemem.c -index 7bb78d2..8bc2a48 100644 ---- a/orc/orccodemem.c -+++ b/orc/orccodemem.c -@@ -266,21 +266,21 @@ orc_code_region_allocate_codemem (OrcCodeRegion *region) - { - const char *tmpdir; - -- tmpdir = getenv ("TMPDIR"); -+ tmpdir = getenv ("XDG_RUNTIME_DIR"); - if (tmpdir && orc_code_region_allocate_codemem_dual_map (region, - tmpdir, FALSE)) return; - -- if (orc_code_region_allocate_codemem_dual_map (region, -- "/tmp", FALSE)) return; -- -- tmpdir = getenv ("XDG_RUNTIME_DIR"); -+ tmpdir = getenv ("HOME"); - if (tmpdir && orc_code_region_allocate_codemem_dual_map (region, - tmpdir, FALSE)) return; - -- tmpdir = getenv ("HOME"); -+ tmpdir = getenv ("TMPDIR"); - if (tmpdir && orc_code_region_allocate_codemem_dual_map (region, - tmpdir, FALSE)) return; - -+ if (orc_code_region_allocate_codemem_dual_map (region, -+ "/tmp", FALSE)) return; -+ - if (orc_code_region_allocate_codemem_anon_map (region)) return; - - ORC_ERROR("Failed to create write and exec mmap regions. This " diff --git a/SPECS/orc.spec b/SPECS/orc.spec index d34ae7f..2d767d3 100644 --- a/SPECS/orc.spec +++ b/SPECS/orc.spec @@ -1,17 +1,12 @@ Name: orc -Version: 0.4.22 -Release: 5%{?dist} +Version: 0.4.26 +Release: 1%{?dist} Summary: The Oil Run-time Compiler Group: System Environment/Libraries License: BSD URL: http://cgit.freedesktop.org/gstreamer/orc/ Source0: http://gstreamer.freedesktop.org/src/orc/%{name}-%{version}.tar.xz -Patch0: orc-selinux-tmplocation.patch -Patch1: 0001-orcc-program-c-fix-64-bit-parameter-loading-loadpq-o.patch -Patch2: 0001-test-limits-improve-test-without-target.patch -Patch3: 0001-compiler-also-prefer-the-backup-function-when-no-tar.patch -Patch4: 0001-executor-fix-load-of-parameters-smaller-than-64-bits.patch BuildRequires: gtk-doc, libtool @@ -54,11 +49,6 @@ The Orc compiler, to produce optimized code. %prep %setup -q -%patch0 -p1 -b .selinux -%patch1 -p1 -b .orc -%patch2 -p1 -b .orc2 -%patch3 -p1 -b .orc3 -%patch4 -p1 -b .orc4 NOCONFIGURE=1 autoreconf -vif @@ -104,6 +94,11 @@ touch -r stamp-h1 %{buildroot}%{_includedir}/%{name}-0.4/orc/orc-stdint.h %changelog +* Thu Mar 09 2017 Wim Taymans - 0.4.26-1 +- Update to 0.4.26 +- Remove upstreamed patches +- Resolves: #1430051 + * Thu Aug 13 2015 Wim Taymans - 0.4.22-5 - Run backup functions on s390x instead of emulation - Fix load of parameters smaller than 64 bits @@ -208,7 +203,7 @@ Resolves: 1048890 * Thu Aug 19 2010 Fabian Deutsch - 0.4.7-1 - Updated to 0.4.7. -* Tue Jul 22 2010 Fabian Deutsch - 0.4.6-1 +* Thu Jul 22 2010 Fabian Deutsch - 0.4.6-1 - Updated to 0.4.6. - New orc-bugreport added.