Merge remote-tracking branch 'upstream/master'
This commit is contained in:
@@ -5,7 +5,7 @@ pkgbase=mingw-w64-${_realname}-git
|
||||
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}-git")
|
||||
provides=("${MINGW_PACKAGE_PREFIX}-${_realname}")
|
||||
conflicts=("${MINGW_PACKAGE_PREFIX}-${_realname}")
|
||||
pkgver=2.4.0.r205.gbc92ff4
|
||||
pkgver=2.5.0.r77.g56670fd
|
||||
pkgrel=1
|
||||
pkgdesc="A C program reducer (mingw-w64)"
|
||||
depends=('perl-Benchmark-Timer'
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
From 0df87ff60d5c5df528feaeae16d5ad9c2741eeb5 Mon Sep 17 00:00:00 2001
|
||||
From: Eric Eide <eeide@cs.utah.edu>
|
||||
Date: Mon, 14 Sep 2015 17:35:33 -0600
|
||||
Subject: [PATCH] Track member-function-name capitalization change.
|
||||
|
||||
---
|
||||
clang_delta/TransformationManager.cpp | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/clang_delta/TransformationManager.cpp b/clang_delta/TransformationManager.cpp
|
||||
index e677930..dceb497 100644
|
||||
--- a/clang_delta/TransformationManager.cpp
|
||||
+++ b/clang_delta/TransformationManager.cpp
|
||||
@@ -112,7 +112,7 @@ bool TransformationManager::initializeCompilerInstance(std::string &ErrorMsg)
|
||||
ClangInstance->setASTConsumer(
|
||||
std::unique_ptr<ASTConsumer>(CurrentTransformationImpl));
|
||||
Preprocessor &PP = ClangInstance->getPreprocessor();
|
||||
- PP.getBuiltinInfo().InitializeBuiltins(PP.getIdentifierTable(),
|
||||
+ PP.getBuiltinInfo().initializeBuiltins(PP.getIdentifierTable(),
|
||||
PP.getLangOpts());
|
||||
|
||||
if (!ClangInstance->InitializeSourceManager(FrontendInputFile(SrcFileName, IK))) {
|
||||
--
|
||||
2.8.1
|
||||
|
||||
@@ -4,7 +4,7 @@ _realname=creduce
|
||||
pkgbase=mingw-w64-${_realname}
|
||||
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
|
||||
replaces=("${MINGW_PACKAGE_PREFIX}-${_realname}-git")
|
||||
pkgver=2.4.0
|
||||
pkgver=2.5.0
|
||||
pkgrel=1
|
||||
pkgdesc="A C program reducer (mingw-w64)"
|
||||
depends=('perl-Benchmark-Timer'
|
||||
@@ -13,7 +13,6 @@ depends=('perl-Benchmark-Timer'
|
||||
'perl-Getopt-Tabular'
|
||||
'perl-Regexp-Common'
|
||||
'perl-Sys-CPU'
|
||||
'delta'
|
||||
"${MINGW_PACKAGE_PREFIX}-astyle"
|
||||
"${MINGW_PACKAGE_PREFIX}-indent"
|
||||
"${MINGW_PACKAGE_PREFIX}-clang")
|
||||
@@ -22,10 +21,8 @@ url='https://github.com/csmith-project/creduce'
|
||||
license=('custom:University of Illinois/NCSA Open Source License')
|
||||
makedepends=("flex" "${MINGW_PACKAGE_PREFIX}-clang")
|
||||
source=(https://github.com/csmith-project/creduce/archive/${_realname}-${pkgver}.tar.gz
|
||||
"0001-Track-member-function-name-capitalization-change.patch"
|
||||
"llvm-config-cygpath")
|
||||
sha256sums=('a3917e37b0c7d77e7f2c2961794ba511f874f78684a7fd944e51c9d43cc5d7c6'
|
||||
'f345091edbb54a614256dea99c373dd3fd0c1de9d97c27cf58685292c8e2ab8b'
|
||||
sha256sums=('6d860adaeac10589441b6075f78778b70a25d1305c7c1638f02e953c804ab16d'
|
||||
'03a7239d1e26d8a5dd5f405e10826679725cae6c01a9c37e80c6f1c184dad0a9')
|
||||
|
||||
prepare() {
|
||||
@@ -33,8 +30,6 @@ prepare() {
|
||||
[[ -d tools ]] && rm -rf tools
|
||||
mkdir tools
|
||||
cp -f "${srcdir}"/llvm-config-cygpath tools/llvm-config
|
||||
cd ${_realname}-${_realname}-${pkgver}
|
||||
patch -p1 -i "${srcdir}"/0001-Track-member-function-name-capitalization-change.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
|
||||
@@ -0,0 +1,111 @@
|
||||
From e743361cb91a7e1b8572c2c125ad2ddf69eed890 Mon Sep 17 00:00:00 2001
|
||||
From: jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
|
||||
Date: Fri, 15 Jul 2016 18:49:38 +0000
|
||||
Subject: [PATCH] PR c++/71092 - ICE with array and constexpr.
|
||||
|
||||
* constexpr.c (cxx_eval_call_expression): Fail quietly when cgraph
|
||||
threw away DECL_SAVED_TREE.
|
||||
|
||||
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238395 138bc75d-0d04-0410-961f-82ee72b054a4
|
||||
---
|
||||
gcc/cp/constexpr.c | 14 +++++-
|
||||
gcc/testsuite/g++.dg/cpp0x/constexpr-array17.C | 61 ++++++++++++++++++++++++++
|
||||
2 files changed, 73 insertions(+), 2 deletions(-)
|
||||
create mode 100644 gcc/testsuite/g++.dg/cpp0x/constexpr-array17.C
|
||||
|
||||
diff --git a/gcc/cp/constexpr.c b/gcc/cp/constexpr.c
|
||||
index 55b05e7..4c98518 100644
|
||||
--- a/gcc/cp/constexpr.c
|
||||
+++ b/gcc/cp/constexpr.c
|
||||
@@ -1450,9 +1450,19 @@ cxx_eval_call_expression (const constexpr_ctx *ctx, tree t,
|
||||
}
|
||||
else
|
||||
{
|
||||
- if (!result || result == error_mark_node)
|
||||
+ if (result && result != error_mark_node)
|
||||
+ /* OK */;
|
||||
+ else if (!DECL_SAVED_TREE (fun))
|
||||
+ {
|
||||
+ /* When at_eof >= 2, cgraph has started throwing away
|
||||
+ DECL_SAVED_TREE, so fail quietly. FIXME we get here because of
|
||||
+ late code generation for VEC_INIT_EXPR, which needs to be
|
||||
+ completely reconsidered. */
|
||||
+ gcc_assert (at_eof >= 2 && ctx->quiet);
|
||||
+ *non_constant_p = true;
|
||||
+ }
|
||||
+ else
|
||||
{
|
||||
- gcc_assert (DECL_SAVED_TREE (fun));
|
||||
tree body, parms, res;
|
||||
|
||||
/* Reuse or create a new unshared copy of this function's body. */
|
||||
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-array17.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-array17.C
|
||||
new file mode 100644
|
||||
index 0000000..c6afa50
|
||||
--- /dev/null
|
||||
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-array17.C
|
||||
@@ -0,0 +1,61 @@
|
||||
+// PR c++/71092
|
||||
+// { dg-do compile { target c++11 } }
|
||||
+
|
||||
+template <typename _Default> struct A { using type = _Default; };
|
||||
+template <typename _Default, template <typename> class>
|
||||
+using __detected_or = A<_Default>;
|
||||
+template <typename _Default, template <typename> class _Op>
|
||||
+using __detected_or_t = typename __detected_or<_Default, _Op>::type;
|
||||
+template <typename _Tp> struct B { typedef _Tp value_type; };
|
||||
+struct C {
|
||||
+ template <typename _Tp> using __pointer = typename _Tp::pointer;
|
||||
+};
|
||||
+template <typename _Alloc> struct J : C {
|
||||
+ using pointer = __detected_or_t<typename _Alloc::value_type *, __pointer>;
|
||||
+};
|
||||
+template <typename _T1> void _Construct(_T1 *) { new _T1; }
|
||||
+struct D {
|
||||
+ template <typename _ForwardIterator, typename _Size>
|
||||
+ static _ForwardIterator __uninit_default_n(_ForwardIterator p1, _Size) {
|
||||
+ _Construct(p1);
|
||||
+ }
|
||||
+};
|
||||
+template <typename _ForwardIterator, typename _Size>
|
||||
+void __uninitialized_default_n(_ForwardIterator p1, _Size) {
|
||||
+ D::__uninit_default_n(p1, 0);
|
||||
+}
|
||||
+template <typename _ForwardIterator, typename _Size, typename _Tp>
|
||||
+void __uninitialized_default_n_a(_ForwardIterator p1, _Size, _Tp) {
|
||||
+ __uninitialized_default_n(p1, 0);
|
||||
+}
|
||||
+template <typename> struct __shared_ptr {
|
||||
+ constexpr __shared_ptr() : _M_ptr(), _M_refcount() {}
|
||||
+ int _M_ptr;
|
||||
+ int _M_refcount;
|
||||
+};
|
||||
+template <typename _Alloc> struct F {
|
||||
+ typedef _Alloc _Tp_alloc_type;
|
||||
+ struct G {
|
||||
+ typename J<_Tp_alloc_type>::pointer _M_start;
|
||||
+ G(_Tp_alloc_type);
|
||||
+ };
|
||||
+ F(int, _Alloc p2) : _M_impl(p2) {}
|
||||
+ G _M_impl;
|
||||
+};
|
||||
+template <typename _Tp, typename _Alloc = B<_Tp>> struct K : F<_Alloc> {
|
||||
+ typedef _Alloc allocator_type;
|
||||
+ K(int, allocator_type p2 = allocator_type()) : F<_Alloc>(0, p2) {
|
||||
+ __uninitialized_default_n_a(this->_M_impl._M_start, 0, 0);
|
||||
+ }
|
||||
+};
|
||||
+struct H {
|
||||
+ H();
|
||||
+ struct I {
|
||||
+ __shared_ptr<int> trigger[1];
|
||||
+ };
|
||||
+ __shared_ptr<int> resetTrigger_;
|
||||
+ K<I> states_;
|
||||
+ __shared_ptr<int> triggerManager_;
|
||||
+};
|
||||
+__shared_ptr<int> a;
|
||||
+H::H() : states_(0), triggerManager_(a) {}
|
||||
--
|
||||
2.9.1
|
||||
|
||||
@@ -0,0 +1,251 @@
|
||||
From 0436f76da397aef1b088d7fe8ad68f3fd259f750 Mon Sep 17 00:00:00 2001
|
||||
From: Ray Donnelly <mingw.android@gmail.com>
|
||||
Date: Sat, 16 Jul 2016 18:06:04 +0100
|
||||
Subject: [PATCH] Add defines to disable optimize for size changes
|
||||
|
||||
---
|
||||
gcc/c-family/c-opts.c | 4 ++++
|
||||
gcc/cgraph.c | 2 ++
|
||||
gcc/cgraph.h | 2 ++
|
||||
gcc/config.in | 11 +++++++++++
|
||||
gcc/config/i386/i386.c | 15 +++++++++++++--
|
||||
gcc/ipa-icf.c | 14 ++++++++++----
|
||||
gcc/ipa-inline.c | 16 +++++++++++-----
|
||||
gcc/predict.c | 4 ++++
|
||||
8 files changed, 57 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/gcc/c-family/c-opts.c b/gcc/c-family/c-opts.c
|
||||
index fec58bc..4db2809 100644
|
||||
--- a/gcc/c-family/c-opts.c
|
||||
+++ b/gcc/c-family/c-opts.c
|
||||
@@ -869,8 +869,12 @@ c_common_post_options (const char **pfilename)
|
||||
&& (cxx_dialect >= cxx11 || flag_isoc99));
|
||||
|
||||
/* Declone C++ 'structors if -Os. */
|
||||
+#ifdef OSIZE_FLAG_DECLONE_CTOR_DTOR
|
||||
if (flag_declone_ctor_dtor == -1)
|
||||
flag_declone_ctor_dtor = optimize_size;
|
||||
+#else
|
||||
+ flag_declone_ctor_dtor = 0;
|
||||
+#endif
|
||||
|
||||
if (warn_abi_version == -1)
|
||||
{
|
||||
diff --git a/gcc/cgraph.c b/gcc/cgraph.c
|
||||
index e256dd0..5be5aad 100644
|
||||
--- a/gcc/cgraph.c
|
||||
+++ b/gcc/cgraph.c
|
||||
@@ -2097,8 +2097,10 @@ cgraph_node::dump (FILE *f)
|
||||
fprintf (f, " only_called_at_startup");
|
||||
if (only_called_at_exit)
|
||||
fprintf (f, " only_called_at_exit");
|
||||
+#ifdef OSIZE_CGRAPH_NODE_DUMP
|
||||
if (opt_for_fn (decl, optimize_size))
|
||||
fprintf (f, " optimize_size");
|
||||
+#endif
|
||||
if (parallelized_function)
|
||||
fprintf (f, " parallelized_function");
|
||||
|
||||
diff --git a/gcc/cgraph.h b/gcc/cgraph.h
|
||||
index ecafe63..ce5c7bb 100644
|
||||
--- a/gcc/cgraph.h
|
||||
+++ b/gcc/cgraph.h
|
||||
@@ -3070,8 +3070,10 @@ cgraph_node::mark_force_output (void)
|
||||
inline bool
|
||||
cgraph_node::optimize_for_size_p (void)
|
||||
{
|
||||
+#ifdef OSIZE_CGRAPH_NODE_OPTIMIZE_FOR_SIZE_P
|
||||
if (opt_for_fn (decl, optimize_size))
|
||||
return true;
|
||||
+#endif
|
||||
if (frequency == NODE_FREQUENCY_UNLIKELY_EXECUTED)
|
||||
return true;
|
||||
else
|
||||
diff --git a/gcc/config.in b/gcc/config.in
|
||||
index 2deb8ed..a7ab371 100644
|
||||
--- a/gcc/config.in
|
||||
+++ b/gcc/config.in
|
||||
@@ -2361,3 +2361,14 @@
|
||||
#undef vfork
|
||||
#endif
|
||||
|
||||
+#define OSIZE_FLAG_DECLONE_CTOR_DTOR
|
||||
+#define OSIZE_CGRAPH_NODE_DUMP
|
||||
+#define OSIZE_CGRAPH_NODE_OPTIMIZE_FOR_SIZE_P
|
||||
+#define OSIZE_DONT_PASS_INSERT_VZEROUPPER
|
||||
+#define OSIZE_USE_SIZE_COST
|
||||
+#define OSIZE_CHECK_FOR_X_FLAG_PREFETCH_LOOP_ARRAYS
|
||||
+#define OSIZE_USE_SIZE_COST2
|
||||
+#define OSIZE_DECIDE_ALIGNMENT_AS_1
|
||||
+#define OSIZE_OPTIMIZE_FUNCTION_FOR_SIZE_P
|
||||
+#define OSIZE_IPA_ICF_CHECK_OPT_FOR_SIZE
|
||||
+#define OSIZE_IPA_INLINE_CHECK_OPT_FOR_SIZE
|
||||
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
|
||||
index c5e5e12..d0fbe17 100644
|
||||
--- a/gcc/config/i386/i386.c
|
||||
+++ b/gcc/config/i386/i386.c
|
||||
@@ -4015,7 +4015,11 @@ public:
|
||||
{
|
||||
return TARGET_AVX && !TARGET_AVX512F
|
||||
&& TARGET_VZEROUPPER && flag_expensive_optimizations
|
||||
- && !optimize_size;
|
||||
+#ifdef OSIZE_DONT_PASS_INSERT_VZEROUPPER
|
||||
+ && !optimize_size;
|
||||
+#else
|
||||
+ ;
|
||||
+#endif
|
||||
}
|
||||
|
||||
virtual unsigned int execute (function *)
|
||||
@@ -5483,9 +5487,11 @@ ix86_option_override_internal (bool main_args_p,
|
||||
ix86_tune_cost = processor_target_table[ix86_tune].cost;
|
||||
/* TODO: ix86_cost should be chosen at instruction or function granuality
|
||||
so for cold code we use size_cost even in !optimize_size compilation. */
|
||||
+#ifdef OSIZE_USE_SIZE_COST
|
||||
if (opts->x_optimize_size)
|
||||
ix86_cost = &ix86_size_cost;
|
||||
else
|
||||
+#endif
|
||||
ix86_cost = ix86_tune_cost;
|
||||
|
||||
/* Arrange to set up i386_stack_locals for all functions. */
|
||||
@@ -5779,7 +5785,9 @@ ix86_option_override_internal (bool main_args_p,
|
||||
if (opts->x_flag_prefetch_loop_arrays < 0
|
||||
&& HAVE_prefetch
|
||||
&& (opts->x_optimize >= 3 || opts->x_flag_profile_use)
|
||||
+#ifdef OSIZE_CHECK_FOR_X_FLAG_PREFETCH_LOOP_ARRAYS
|
||||
&& !opts->x_optimize_size
|
||||
+#endif
|
||||
&& TARGET_SOFTWARE_PREFETCHING_BENEFICIAL)
|
||||
opts->x_flag_prefetch_loop_arrays = 1;
|
||||
|
||||
@@ -6196,9 +6204,11 @@ ix86_function_specific_restore (struct gcc_options *opts,
|
||||
ix86_tune_cost = processor_target_table[ix86_tune].cost;
|
||||
/* TODO: ix86_cost should be chosen at instruction or function granuality
|
||||
so for cold code we use size_cost even in !optimize_size compilation. */
|
||||
+#ifdef OSIZE_USE_SIZE_COST2
|
||||
if (opts->x_optimize_size)
|
||||
ix86_cost = &ix86_size_cost;
|
||||
else
|
||||
+#endif
|
||||
ix86_cost = ix86_tune_cost;
|
||||
|
||||
/* Recreate the arch feature tests if the arch changed */
|
||||
@@ -26789,9 +26799,10 @@ decide_alignment (int align,
|
||||
if (TARGET_PENTIUMPRO
|
||||
&& (alg == rep_prefix_4_byte || alg == rep_prefix_1_byte))
|
||||
desired_align = 8;
|
||||
-
|
||||
+#ifdef OSIZE_DECIDE_ALIGNMENT_AS_1
|
||||
if (optimize_size)
|
||||
desired_align = 1;
|
||||
+#endif
|
||||
if (desired_align < align)
|
||||
desired_align = align;
|
||||
if (expected_size != -1 && expected_size < 4)
|
||||
diff --git a/gcc/ipa-icf.c b/gcc/ipa-icf.c
|
||||
index 3c04b5a..a6976a5 100644
|
||||
--- a/gcc/ipa-icf.c
|
||||
+++ b/gcc/ipa-icf.c
|
||||
@@ -84,6 +84,12 @@ along with GCC; see the file COPYING3. If not see
|
||||
#include "stor-layout.h"
|
||||
#include "dbgcnt.h"
|
||||
|
||||
+#ifdef OSIZE_IPA_ICF_CHECK_OPT_FOR_SIZE
|
||||
+#define opt_for_fn_2(fndecl, opt) (opts_for_fn (fndecl)->x_##opt)
|
||||
+#else
|
||||
+#define opt_for_fn_2(fndecl, opt) (0)
|
||||
+#endif
|
||||
+
|
||||
using namespace ipa_icf_gimple;
|
||||
|
||||
namespace ipa_icf {
|
||||
@@ -393,8 +399,8 @@ sem_item::compare_referenced_symbol_properties (symtab_node *used_by,
|
||||
unit has no !optimize_size functions. */
|
||||
|
||||
if ((!used_by || address || !is_a <cgraph_node *> (used_by)
|
||||
- || !opt_for_fn (used_by->decl, optimize_size))
|
||||
- && !opt_for_fn (n1->decl, optimize_size)
|
||||
+ || !opt_for_fn_2 (used_by->decl, optimize_size))
|
||||
+ && !opt_for_fn_2 (n1->decl, optimize_size)
|
||||
&& n1->get_availability () > AVAIL_INTERPOSABLE
|
||||
&& (!DECL_UNINLINABLE (n1->decl) || !DECL_UNINLINABLE (n2->decl)))
|
||||
{
|
||||
@@ -466,8 +472,8 @@ sem_item::hash_referenced_symbol_properties (symtab_node *ref,
|
||||
{
|
||||
if (is_a <cgraph_node *> (ref))
|
||||
{
|
||||
- if ((type != FUNC || address || !opt_for_fn (decl, optimize_size))
|
||||
- && !opt_for_fn (ref->decl, optimize_size)
|
||||
+ if ((type != FUNC || address || !opt_for_fn_2 (decl, optimize_size))
|
||||
+ && !opt_for_fn_2 (ref->decl, optimize_size)
|
||||
&& !DECL_UNINLINABLE (ref->decl))
|
||||
{
|
||||
hstate.add_flag (DECL_DISREGARD_INLINE_LIMITS (ref->decl));
|
||||
diff --git a/gcc/ipa-inline.c b/gcc/ipa-inline.c
|
||||
index 5c9366a..d247654 100644
|
||||
--- a/gcc/ipa-inline.c
|
||||
+++ b/gcc/ipa-inline.c
|
||||
@@ -124,6 +124,12 @@ static int overall_size;
|
||||
static gcov_type max_count;
|
||||
static gcov_type spec_rem;
|
||||
|
||||
+#ifdef OSIZE_IPA_INLINE_CHECK_OPT_FOR_SIZE
|
||||
+#define opt_for_fn_2(fndecl, opt) (opts_for_fn (fndecl)->x_##opt)
|
||||
+#else
|
||||
+#define opt_for_fn_2(fndecl, opt) (0)
|
||||
+#endif
|
||||
+
|
||||
/* Pre-computed constants 1/CGRAPH_FREQ_BASE and 1/100. */
|
||||
static sreal cgraph_freq_base_rec, percent_rec;
|
||||
|
||||
@@ -483,8 +489,8 @@ can_inline_edge_p (struct cgraph_edge *e, bool report,
|
||||
code shrinks or we are in MAX_INLINE_INSNS_SINGLE limit and callee
|
||||
is inline (and thus likely an unified comdat). This will allow caller
|
||||
to run faster. */
|
||||
- else if (opt_for_fn (callee->decl, optimize_size)
|
||||
- > opt_for_fn (caller->decl, optimize_size))
|
||||
+ else if (opt_for_fn_2 (callee->decl, optimize_size)
|
||||
+ > opt_for_fn_2 (caller->decl, optimize_size))
|
||||
{
|
||||
int growth = estimate_edge_growth (e);
|
||||
if (growth > 0
|
||||
@@ -498,8 +504,8 @@ can_inline_edge_p (struct cgraph_edge *e, bool report,
|
||||
}
|
||||
/* If callee is more aggressively optimized for performance than caller,
|
||||
we generally want to inline only cheap (runtime wise) functions. */
|
||||
- else if (opt_for_fn (callee->decl, optimize_size)
|
||||
- < opt_for_fn (caller->decl, optimize_size)
|
||||
+ else if (opt_for_fn_2 (callee->decl, optimize_size)
|
||||
+ < opt_for_fn_2 (caller->decl, optimize_size)
|
||||
|| (opt_for_fn (callee->decl, optimize)
|
||||
> opt_for_fn (caller->decl, optimize)))
|
||||
{
|
||||
@@ -1704,7 +1710,7 @@ bool
|
||||
inline_account_function_p (struct cgraph_node *node)
|
||||
{
|
||||
return (!DECL_EXTERNAL (node->decl)
|
||||
- && !opt_for_fn (node->decl, optimize_size)
|
||||
+ && !opt_for_fn_2 (node->decl, optimize_size)
|
||||
&& node->frequency != NODE_FREQUENCY_UNLIKELY_EXECUTED);
|
||||
}
|
||||
|
||||
diff --git a/gcc/predict.c b/gcc/predict.c
|
||||
index 7d55ff7..84c2390 100644
|
||||
--- a/gcc/predict.c
|
||||
+++ b/gcc/predict.c
|
||||
@@ -272,7 +272,11 @@ bool
|
||||
optimize_function_for_size_p (struct function *fun)
|
||||
{
|
||||
if (!fun || !fun->decl)
|
||||
+#ifdef OSIZE_OPTIMIZE_FUNCTION_FOR_SIZE_P
|
||||
return optimize_size;
|
||||
+#else
|
||||
+ return 0;
|
||||
+#endif
|
||||
cgraph_node *n = cgraph_node::get (fun->decl);
|
||||
return n && n->optimize_for_size_p ();
|
||||
}
|
||||
--
|
||||
2.9.1
|
||||
|
||||
@@ -11,7 +11,7 @@ pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}-git"
|
||||
"${MINGW_PACKAGE_PREFIX}-${_realname}-fortran-git"
|
||||
"${MINGW_PACKAGE_PREFIX}-${_realname}-ada-git"
|
||||
"${MINGW_PACKAGE_PREFIX}-${_realname}-objc-git")
|
||||
pkgver=r145817.32dc90f
|
||||
pkgver=r146016.f1d38eb
|
||||
pkgrel=1
|
||||
pkgdesc="GCC for the MinGW-w64"
|
||||
arch=('any')
|
||||
@@ -60,7 +60,9 @@ source=("git://gcc.gnu.org/git/gcc.git#branch=${_branch}"
|
||||
"0013-MinGW-w64-Enable-shared-gnat.patch"
|
||||
"0014-gcc-5-branch-clone_function_name_1-Retain-any-stdcall-suffix.patch"
|
||||
"0014-gcc-6-branch-clone_function_name_1-Retain-any-stdcall-suffix.patch"
|
||||
"0015-Force-linking-to-libgcc_s_dw2-1.dll-deprecated.patch")
|
||||
"0015-Force-linking-to-libgcc_s_dw2-1.dll-deprecated.patch"
|
||||
"0016-gcc-6-branch-PR-c-71092-ICE-with-array-and-constexpr.patch"
|
||||
"9999-gcc-6-branch-Add-defines-to-disable-optimize-for-size-changes.patch")
|
||||
sha256sums=('SKIP'
|
||||
'49a5e264e611de7f2388f01ba649ec22cf3ae1cde3ba45082a7d72294c2f4fd7'
|
||||
'83e9c6f76f728ae3e2f2eabb588b0d6cea7a3eda03cd5e77aed9d613143b7348'
|
||||
@@ -78,7 +80,9 @@ sha256sums=('SKIP'
|
||||
'bab73267116024d0b0d2a9dcb78a0ad839bb6a232f1ebbee7ed8fd54c8d71087'
|
||||
'ad4bb777a7f19070e83bdf5046281ee9e359ed039c70179285c4119244cf9093'
|
||||
'60a58ed41389691a68ef4b7d47a0328df4d28d26e6c680a6b06b31191481ca65'
|
||||
'262c6fb0f6c9951d69e4c2dcc27949aa8f2cca8e672faf66740a7dbba4a4cd2c')
|
||||
'262c6fb0f6c9951d69e4c2dcc27949aa8f2cca8e672faf66740a7dbba4a4cd2c'
|
||||
'2f422c1c3c90145072c8636cf5ee94419d4f7872741fcff913fa65b3a98df570'
|
||||
'a82eadfbb6a182b1ffeb860e89c89f46373a8b891594280b2268ecac8d7bac88')
|
||||
|
||||
_threads="posix"
|
||||
|
||||
@@ -89,21 +93,24 @@ pkgver() {
|
||||
|
||||
prepare() {
|
||||
cd ${srcdir}/${_realname}
|
||||
git am "${srcdir}"/0001-${_branch}-gfortran-incorrect-reading-of-values-fr.patch || true
|
||||
git am "${srcdir}"/0002-Relocate-libintl.patch
|
||||
git am "${srcdir}"/0003-Windows-Follow-Posix-dir-exists-semantics-more-close.patch
|
||||
git am "${srcdir}"/0004-Windows-Use-not-in-progpath-and-leave-case-as-is.patch
|
||||
git am "${srcdir}"/0005-Windows-Don-t-ignore-native-system-header-dir.patch
|
||||
git am "${srcdir}"/0006-${_branch}-Windows-New-feature-to-allow-overriding.patch
|
||||
git am "${srcdir}"/0007-Build-EXTRA_GNATTOOLS-for-Ada.patch
|
||||
git am "${srcdir}"/0008-Prettify-linking-no-undefined.patch
|
||||
git am "${srcdir}"/0009-gcc-make-xmmintrin-header-cplusplus-compatible-depre.patch
|
||||
git am "${srcdir}"/0010-Fix-using-large-PCH.patch
|
||||
git am "${srcdir}"/0011-Enable-shared-gnat-implib.patch
|
||||
git am "${srcdir}"/0012-MinGW-w64-Enable-libitm.patch
|
||||
git am "${srcdir}"/0013-MinGW-w64-Enable-shared-gnat.patch
|
||||
git am "${srcdir}"/0014-${_branch}-clone_function_name_1-Retain-any-stdcall-suffix.patch
|
||||
git am "${srcdir}"/0015-Force-linking-to-libgcc_s_dw2-1.dll-deprecated.patch
|
||||
GIT_AM="git am --committer-date-is-author-date"
|
||||
${GIT_AM} "${srcdir}"/0001-${_branch}-gfortran-incorrect-reading-of-values-fr.patch || true
|
||||
${GIT_AM} "${srcdir}"/0002-Relocate-libintl.patch
|
||||
${GIT_AM} "${srcdir}"/0003-Windows-Follow-Posix-dir-exists-semantics-more-close.patch
|
||||
${GIT_AM} "${srcdir}"/0004-Windows-Use-not-in-progpath-and-leave-case-as-is.patch
|
||||
${GIT_AM} "${srcdir}"/0005-Windows-Don-t-ignore-native-system-header-dir.patch
|
||||
${GIT_AM} "${srcdir}"/0006-${_branch}-Windows-New-feature-to-allow-overriding.patch
|
||||
${GIT_AM} "${srcdir}"/0007-Build-EXTRA_GNATTOOLS-for-Ada.patch
|
||||
${GIT_AM} "${srcdir}"/0008-Prettify-linking-no-undefined.patch
|
||||
${GIT_AM} "${srcdir}"/0009-gcc-make-xmmintrin-header-cplusplus-compatible-depre.patch
|
||||
${GIT_AM} "${srcdir}"/0010-Fix-using-large-PCH.patch
|
||||
${GIT_AM} "${srcdir}"/0011-Enable-shared-gnat-implib.patch
|
||||
${GIT_AM} "${srcdir}"/0012-MinGW-w64-Enable-libitm.patch
|
||||
${GIT_AM} "${srcdir}"/0013-MinGW-w64-Enable-shared-gnat.patch
|
||||
${GIT_AM} "${srcdir}"/0014-${_branch}-clone_function_name_1-Retain-any-stdcall-suffix.patch
|
||||
${GIT_AM} "${srcdir}"/0015-Force-linking-to-libgcc_s_dw2-1.dll-deprecated.patch
|
||||
${GIT_AM} "${srcdir}"/0016-gcc-6-branch-PR-c-71092-ICE-with-array-and-constexpr.patch
|
||||
# ${GIT_AM} "${srcdir}"/9999-gcc-6-branch-Add-defines-to-disable-optimize-for-size-changes.patch
|
||||
|
||||
# do not expect $prefix/mingw symlink - this should be superceded by
|
||||
# 0004-Windows-Don-t-ignore-native-system-header-dir.patch .. but isn't!
|
||||
|
||||
67
mingw-w64-ngspice/PKGBUILD
Normal file
67
mingw-w64-ngspice/PKGBUILD
Normal file
@@ -0,0 +1,67 @@
|
||||
# Maintainer: Maciej Suminski <maciej.suminski@cern.ch>
|
||||
#
|
||||
# Based on Arch ngspice PKGBUILD:
|
||||
# https://git.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/ngspice
|
||||
# Contributor: Kyle Keen <keenerd@gmail.com>
|
||||
# Contributor: Abhishek Dasgupta <abhidg@gmail.com>
|
||||
# Contributor: Jason Taylor <jftaylor21@gmail.com>
|
||||
# Contributor: Luis Henrique <lmello.009@gmail.com>
|
||||
|
||||
_realname=ngspice
|
||||
pkgbase=mingw-w64-${_realname}
|
||||
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
|
||||
pkgver=26
|
||||
pkgrel=1
|
||||
pkgdesc='Mixed-level/Mixed-signal circuit simulator based on Spice3f5, Ciber1b1, and Xspice.'
|
||||
url='http://ngspice.sourceforge.net'
|
||||
license=('BSD')
|
||||
arch=('any')
|
||||
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc")
|
||||
depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs")
|
||||
source=("http://downloads.sourceforge.net/project/${_realname}/ng-spice-rework/${pkgver}/${_realname}-${pkgver}.tar.gz"
|
||||
"http://downloads.sourceforge.net/project/${_realname}/ng-spice-rework/${pkgver}/${_realname}-doc-${pkgver}.tar.gz")
|
||||
sha256sums=('51e230c8b720802d93747bc580c0a29d1fb530f3dd06f213b6a700ca9a4d0108'
|
||||
'adc722cf627ee4506ea612c3fcb79f9c73c497e328547ab2d1ea97da588459cb')
|
||||
|
||||
build() {
|
||||
cd "${srcdir}/${_realname}-${pkgver}"
|
||||
[[ -d "${srcdir}/build-shared-${CARCH}" ]] && rm -rf "${srcdir}/build-shared-${CARCH}"
|
||||
mkdir -p "${srcdir}/build-shared-${CARCH}" && cd "${srcdir}/build-shared-${CARCH}"
|
||||
|
||||
# FS#45230, create so lib
|
||||
# shared lib sets flags and modifies headers, needs dedicated pass
|
||||
# adding --with-readline disables libngspice-0.dll
|
||||
../${_realname}-${pkgver}/configure \
|
||||
--prefix=${MINGW_PREFIX} \
|
||||
--build=${MINGW_CHOST} \
|
||||
--host=${MINGW_CHOST} \
|
||||
--enable-openmp \
|
||||
--enable-xspice \
|
||||
--enable-cider \
|
||||
--with-ngshared
|
||||
make
|
||||
|
||||
cd "${srcdir}/${_realname}-${pkgver}"
|
||||
[[ -d "${srcdir}/build-static-${CARCH}" ]] && rm -rf "${srcdir}/build-static-${CARCH}"
|
||||
mkdir -p "${srcdir}/build-static-${CARCH}" && cd "${srcdir}/build-static-${CARCH}"
|
||||
|
||||
../${_realname}-${pkgver}/configure \
|
||||
--prefix=${MINGW_PREFIX} \
|
||||
--build=${MINGW_CHOST} \
|
||||
--host=${MINGW_CHOST} \
|
||||
--enable-xspice \
|
||||
--enable-cider \
|
||||
--enable-openmp
|
||||
make
|
||||
}
|
||||
|
||||
package() {
|
||||
cd "${srcdir}/build-static-${CARCH}"
|
||||
make install DESTDIR="${pkgdir}"
|
||||
install -D -m644 "${srcdir}/${_realname}-${pkgver}/COPYING" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE"
|
||||
install -D -m644 "${srcdir}/${_realname}-doc-${pkgver}/manual.pdf" "${pkgdir}${MINGW_PREFIX}/share/doc/${_realname}/manual.pdf"
|
||||
|
||||
cd "${srcdir}/build-shared-${CARCH}"
|
||||
install -D -m755 "src/.libs/libngspice-0.dll" "${pkgdir}${MINGW_PREFIX}/bin"
|
||||
|
||||
}
|
||||
@@ -3,7 +3,7 @@
|
||||
_realname=pngcrush
|
||||
pkgbase=mingw-w64-${_realname}
|
||||
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
|
||||
pkgver=1.8.1
|
||||
pkgver=1.8.2
|
||||
pkgrel=1
|
||||
pkgdesc="A tool for optimizing the compression of PNG files (mingw-w64)"
|
||||
arch=('any')
|
||||
@@ -13,7 +13,7 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-gcc")
|
||||
depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs" "${MINGW_PACKAGE_PREFIX}-libpng" "${MINGW_PACKAGE_PREFIX}-zlib")
|
||||
source=("https://downloads.sourceforge.net/pmt/${_realname}-${pkgver}-nolib.tar.gz"
|
||||
LICENSE)
|
||||
sha256sums=('5d55f89a3a596f4916c42a1819bdcf4e3bae77db7ce42716eb5c2ad69a6a2e36'
|
||||
sha256sums=('eb742ba39cd8cbeb87ccbd7849b0084da45f3701254ebd5f6db98ab7ebcaa236'
|
||||
'5628338f1b1c711b2b2e82d14124bc3001b37216a66f00b18d0b3b9c7e016720')
|
||||
|
||||
prepare() {
|
||||
|
||||
Reference in New Issue
Block a user