Hi!
A recent SCCVN change results in more constants (in these testcases constant
vectors) into arguments of builtins and because of a bug in the expansion of
some of them we ended up with:
UNRESOLVED: gcc.target/i386/avx512vl-vpshldvd-2.c compilation failed to produce
executable
FAIL: gcc.target/
On Thu, Jul 11, 2019 at 08:48:52AM +0200, Martin Liška wrote:
> --- a/gcc/c-family/c-opts.c
> +++ b/gcc/c-family/c-opts.c
> @@ -501,6 +501,8 @@ c_common_handle_option (size_t scode, const char *arg,
> HOST_WIDE_INT value,
>flag_use_repository = value;
>if (value)
> flag_impli
Hi!
The same SCCVN change also introduced:
FAIL: gcc.target/i386/avx512vl-vcvttpd2dq-2.c execution test
FAIL: gcc.target/i386/avx512vl-vcvttpd2udq-2.c execution test
failures, the reason in the generic code is similar, more constants
propagated to builtins, but the actual bug is very different.
Th
On 08.07.19 23:19, Matthias Klose wrote:
> On 14.06.19 15:09, Gaius Mulley wrote:
>>
>> Hello,
>>
>> here is version two of the patches which introduce Modula-2 into the
>> GCC trunk. The patches include:
>>
>> (*) a patch to allow all front ends to register a lang spec function.
>>(inc
On Thu, 11 Jul 2019 at 01:48, Richard Sandiford
wrote:
>
> Prathamesh Kulkarni writes:
> > Hi,
> > For following test-case:
> >
> > typedef double v4df __attribute__ ((vector_size (32)));
> > void foo(v4df);
> >
> > int
> > main ()
> > {
> > volatile v4df x1;
> > x1 = (v4df) { 10.0, 20.0, 30.
This patch corrects the generation of dynamic accessibility checks which
are guaranteed to trigger errors during run time so as to give the user
proper warning during unit compiliation.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-07-11 Justin Squirek
gcc/ada/
* checks.adb
This patch rewrites the way simplify_subreg handles constants.
It uses similar native_encode/native_decode routines to the
tree-level handling of VIEW_CONVERT_EXPR, meaning that we can
move between rtx constants and the target memory image of them.
The main point of this patch is to support subreg
GNAT issues a warning under -gnatwa when actuals for a call are named
like the formals, but in a different order. This is inappropriate for
calls to operators in infix form, when e.g. Right <= Left is in general
the intended order. Special case calls to operators to avoid that
spurious warning.
Te
This patch recognizes case of dynamic predicates on integer subtypes
that are simple enough to be evaluated statically when the argument is
itself a literal. Even though in many cases such predicate checks will
be removed by the back-end with any level of optimization, it is
preferable to perform t
For some time the Repinfo unit has been able to output the
representation information in the JSON data interchange format in
addition to the usual text and binary formats.
The new Repinfo.Input unit makes it possible to read back this
information under this format and make it available to clients,
A pragma Check for Dynamic_Predicate does not correspond to any source
construct that has a provisionally-disabled SCO.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-07-11 Thomas Quinot
gcc/ada/
* sem_prag.adb (Analyze_Pragma, case pragma Check): Do not call
Set_SCO_
In the special GNATprove mode of the frontend, automatic inlining is
performed, which may lead to spurious errors on dimensionality checking.
Avoid performing this checking on inlined code, which has already been
checked for dimensionality errors.
There is no impact on compilation.
Tested on x86_
This patch introduces binder switch -d_S which prompts the various
phases of the elaboration order mechanism to output a short message
concerning their commencement and completion. The output is useful when
trying to determine whether a phase is stuck in an infinite loop.
-- Source --
This patch updates predicate Null_Status to prevent an infinite
recursion when the argument is an illegal object declaration of an
access type.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-07-11 Hristian Kirtchev
gcc/ada/
* sem_util.adb (Null_Status): Assume that an erroneo
This patch corrects the generation of protected body declarations so
that instances of pragma Unreferenced applied to formals don't falsly
trigger undefined references.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-07-11 Justin Squirek
gcc/ada/
* exp_ch9.adb (Build_Private_P
This patch updates the retrieval of the renamed object name of an object
renaming declaration to handle various name forms.
No need for a test because one already exists, and reproducing requires
a compiler built with assertions.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-07-11 Hris
One part said all metrics are enabled by default (which is now true),
and another part said the coupling metrics are disabled by default
(which is no longer true).
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-07-11 Bob Duff
gcc/ada/
* doc/gnat_ugn/gnat_utility_programs.rst:
Add a check to avoid causing a buffer overflow when the map is empty
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-07-11 Claire Dross
gcc/ada/
* libgnat/a-cfhama.adb, libgnat/a-cfhase.adb (Free): Do not
reset the Has_Element flag if no element is freed.--- gcc/ada/li
The new minimal binder option ("-minimal") suppresses the generation of
binder objects that are not strictly required for program operation.
This option is suitable for space constrained applications and comes
with the restriction that programs can no longer be debugged using GDB.
Tested on x86_64
This patch corrects the resolution of operator "not" when the expression
being negated is an equality operator to prevent the transformation of
an intrinsic equality operator into a function call.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-07-11 Hristian Kirtchev
gcc/ada/
When the Loop_Entry attribute is used inside a loop invariant or another
assertion where it is allowed, it may lead to spurious warnings on
conditions that are detected to be always valid. Now fixed.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-07-11 Yannick Moy
gcc/ada/
*
This patch updates the analysis of protected types to properly mark the
type as having controlled components when it contains at least one such
component. This in turn marks a potential partial view as requiring
finalization actions.
-- Source --
-- types.ads
with Ada.
This patch removes redundant dynamic predicate checks generated by type
conversions in various contexts. The patch also recognizes additional
such checks that can be evaluated statically when applied to constant
values.
No simple test available.
Tested on x86_64-pc-linux-gnu, committed on trunk
This patch adds a missing case to the mechanism that outputs the
elaboration order dependencies of units.
-- Source --
-- pack.ads
package Pack is
procedure Force_Body;
end Pack;
-- pack.adb
package body Pack is
procedure Force_Body is null;
end Pack;
-- mai
Ownership checking as done in SPARK should be applied only to SPARK
code, which requires GNATprove knowledge of the SPARK_Mode boundary.
Transform the checking unit into a generic to allow passing in the
knowledge from GNATprove to that unit in GNAT sources.
Keeping the code in GNAT sources makes
This patch extends the tree-level folding of variable-length vectors
so that it can also be used on rtxes. The first step is to move
the tree_vector_builder new_unary/binary_operator routines to the
parent vector_builder class (which in turn means adding a new
template parameter). The second step
This patch fixes a compiler abort on a declarastion for a protected type
PT when one of its private component is of type access PT.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-07-11 Ed Schonberg
gcc/ada/
* exp_ch9.adb (Expand_N_Protected_Type_Declaaration): New
sub
This patch uses the constant vector encoding scheme to handle
more cases of a VEC_DUPLICATE of another vector. Duplicating
any fixed-length vector is fine, and duplicating a variable-length
vector is OK as long as that vector is also a duplicate of a
fixed-length sequence.
Other cases fell throug
Prathamesh Kulkarni writes:
> @@ -186,6 +186,23 @@ skip_alternative (const char *p)
> /* Nonzero means volatile operands are recognized. */
> extern int volatile_ok;
>
> +/* RAII class for temporarily setting volatile_ok. */
> +
> +class temporary_volatile_ok
> +{
> +public:
> + temporary_v
Hi Richard,
on 2019/7/11 上午3:30, Richard Sandiford wrote:
> "Kewen.Lin" writes:
>> Hi all,
>> Is it a reasonable patch? If yes, is it ok for trunk?
>
> It looks really useful, but IMO we should either emit the hint for all
> end-of-block insns with a surprising fallthrough edge, or -- if we
> re
On Thu, Jul 11, 2019 at 9:01 AM Jakub Jelinek wrote:
>
> Hi!
>
> A recent SCCVN change results in more constants (in these testcases constant
> vectors) into arguments of builtins and because of a bug in the expansion of
> some of them we ended up with:
> UNRESOLVED: gcc.target/i386/avx512vl-vpshl
Hi Jan,
> * g++.dg/lto/alias-3_0.C: New file.
> * g++.dg/lto/alias-3_1.c: New file.
the new test has a couple of problems: DejaGnu warns everywhere:
WARNING: lto.exp does not support dg-lto-do in secondary source files
WARNING: lto.exp does not support dg-lto-options in secondary sou
On Thu, Jul 11, 2019 at 9:17 AM Jakub Jelinek wrote:
>
> Hi!
>
> The same SCCVN change also introduced:
> FAIL: gcc.target/i386/avx512vl-vcvttpd2dq-2.c execution test
> FAIL: gcc.target/i386/avx512vl-vcvttpd2udq-2.c execution test
> failures, the reason in the generic code is similar, more constan
Kewen.Lin writes:
> Hi Richard,
>
> on 2019/7/11 上午3:30, Richard Sandiford wrote:
>> "Kewen.Lin" writes:
>>> Hi all,
>>> Is it a reasonable patch? If yes, is it ok for trunk?
>>
>> It looks really useful, but IMO we should either emit the hint for all
>> end-of-block insns with a surprising fall
On Wed, Jul 10, 2019 at 11:16 PM Eric Botcazou wrote:
>
> Hi,
>
> the returns are a little problematic for coverage info because they are
> commonalized in GIMPLE, i.e. turned into gotos to a representative return.
> This means that you need to clear the location of the representative return,
> se
On Thu, Jul 11, 2019 at 1:54 AM Martin Sebor wrote:
>
> On 7/2/19 4:38 PM, Jeff Law wrote:
> > On 7/1/19 7:47 PM, Martin Sebor wrote:
> >> Attached is a more complete solution that fully resolves the bug
> >> report by avoiding a warning in cases like:
> >>
> >>char a[32], b[8];
> >>
> >>v
On Thu, Jul 11, 2019 at 11:11:58AM +0200, Richard Biener wrote:
> The others all smell like they might be yours ;) (besides object-size
> maybe but that one is limited by having a cache - hopefully also
> used when not used in the compute-everything mode).
objsz doesn't really have a compute ever
On Thu, Jul 11, 2019 at 10:03 AM Richard Sandiford
wrote:
>
> This patch rewrites the way simplify_subreg handles constants.
> It uses similar native_encode/native_decode routines to the
> tree-level handling of VIEW_CONVERT_EXPR, meaning that we can
> move between rtx constants and the target mem
On Wed, Jul 10, 2019 at 5:52 PM Richard Biener
wrote:
>
> On July 10, 2019 2:11:17 PM GMT+02:00, Michael Matz wrote:
> >Hi,
> >
> >On Tue, 9 Jul 2019, Richard Biener wrote:
> >
> >> >The basic block index is not a DFS index, so no, that's not a test
> >for
> >> >backedge.
> >>
> >> I think in CFG
Richard Biener writes:
> On Thu, Jul 11, 2019 at 10:03 AM Richard Sandiford
> wrote:
>>
>> This patch rewrites the way simplify_subreg handles constants.
>> It uses similar native_encode/native_decode routines to the
>> tree-level handling of VIEW_CONVERT_EXPR, meaning that we can
>> move between
On Jul 4, 2019, Richard Biener wrote:
> Yeah. For other stuff we're simply looking at CPP_NAME and
> string-matching, see c_parser_gimple_compound_statement
> where you'd probably hook this into.
Here's a working patch that introduces try/finally[/else] in gimplefe.
Regstrapped on x86_64-linux
... and here's a patch that uses a try/finally/else gimplefe test to
demonstrate the GIMPLE_EH_ELSE lowering problem (might_throw3 is tagged
as [LP 1] rather than [LP 2]), and fixes it.
Regstrapped on x86_64-linux-gnu. Ok to install?
allow EH to escape from GIMPLE_EH_ELSE ELSE block
The only p
> Hmm. So for
>
> int baz;
> int foo()
> {
> int i;
> goto skip;
> done:
> return i;
> skip:
> i = 1;
> if (baz)
> return baz;
> /* ... */
> goto done;
> } /* (*) */
>
> we'd assign (*) to the return? It might be better to record
> (in struct function?) the location of any act
Matthias Klose writes:
>> I had a look at the GCC 9 version of the patches, with a build including a
>> make
>> install. Some comments:
>
> Had a test build based on the gcc-9 branch,
> https://launchpad.net/~doko/+archive/ubuntu/toolchain/+sourcepub/10331180/+listing-archive-extra
>
> powerpc64
In a future patch, I plan to introduce a new function that says whether an
address is prefixed based on the address format (D-form, DS-form, DQ-form) used
by the instruction. I plan on naming the new function:
rs6000_prefixed_address_format
This means the existing function that takes a m
On 10/07/2019 17:20, Bernhard Reutner-Fischer wrote:
On 10 July 2019 17:52:40 CEST, Steve Kargl
wrote:
On Wed, Jul 10, 2019 at 02:50:47PM +0100, Mark Eggleston wrote:
The attached patch treats the intrinsic SIGN in the same way as MOD
and
DIM as it has the same arguments.
Tested using ma
[Sorry for delay: head down in linker plus having nice food poisoning
bouts]
On 9 Jul 2019, Mike Stump verbalised:
> On Jul 5, 2019, at 11:28 AM, Nix wrote:
>> ICTF for the entire Linux kernel is about 6MiB
>
> Any reason why not add CTF to the next dwarf standard? Then, we just
> support the n
On 10 Jul 2019, Segher Boessenkool spake thusly:
> On Fri, Jul 05, 2019 at 07:28:12PM +0100, Nix wrote:
>> On 5 Jul 2019, Richard Biener said:
>>
>> > On Fri, Jul 5, 2019 at 12:21 AM Indu Bhagat wrote:
>> >> CTF, at this time, is type information for entities at global or file
>> >> scope.
>> >
The following exends fold_array_ctor_reference to constant-fold
reads that cross multiple array elements which is needed to fix
folding for targets like aarch64 in PR83518 where we end up with
arr = *.LC0;
arr[0] = 5;
vect__56.15_75 = MEM [(int *)&arr];
now it would be nice to have an it
On Thu, Jul 11, 2019 at 12:52 PM Eric Botcazou wrote:
>
> > Hmm. So for
> >
> > int baz;
> > int foo()
> > {
> > int i;
> > goto skip;
> > done:
> > return i;
> > skip:
> > i = 1;
> > if (baz)
> > return baz;
> > /* ... */
> > goto done;
> > } /* (*) */
> >
> > we'd assign (*) t
Hi Richard,
on 2019/7/10 下午7:50, Richard Biener wrote:
> On Mon, 8 Jul 2019, Kewen.Lin wrote:
>
>
> + tree rhs = gimple_assign_rhs1 (oe1def);
> + tree vec = TREE_OPERAND (rhs, 0);
> + tree vec_type = TREE_TYPE (vec);
> +
> + if (TREE_CODE (vec) != SSA_NAME || !VECTOR_TYPE_P (
Hi Richard,
on 2019/7/11 下午4:51, Richard Sandiford wrote:
> Kewen.Lin writes:
>>
>> - if (flags & TDF_BLOCKS)
>
> I think we still need an if here, but with the condition instead being:
>
>cfun->curr_properties & PROP_cfg
>
>> + else if (EDGE_COUNT (bb->succs) > 0)
>> +
Hi,
this patch makes nonoverlapping_component_refs_since_match_p to accept
paths with non-trivial MEM_REFs and TMRs assuming that they have same
semantics.
Bootstrapped/regtested x86_64-linux, OK?
Honza
* tree-ssa-alias.c (same_tmr_indexing_p): Break out from ...
(indirect_refs_m
Kewen.Lin writes:
> + /* Emit a hint if the fallthrough target of current basic block
> +isn't the one placed right next. */
> + else if (EDGE_COUNT (bb->succs) > 0)
> + {
> + gcc_assert (BB_END (bb) == tmp_rtx);
> +
On Thu, 11 Jul 2019, Jan Hubicka wrote:
> Hi,
> this patch makes nonoverlapping_component_refs_since_match_p to accept
> paths with non-trivial MEM_REFs and TMRs assuming that they have same
> semantics.
Hmm. We'll never get any TARGET_MEM_REFs wrapped with
handled-components so I wonder if it m
> On Thu, 11 Jul 2019, Jan Hubicka wrote:
>
> > Hi,
> > this patch makes nonoverlapping_component_refs_since_match_p to accept
> > paths with non-trivial MEM_REFs and TMRs assuming that they have same
> > semantics.
>
> Hmm. We'll never get any TARGET_MEM_REFs wrapped with
> handled-components s
> > On Thu, 11 Jul 2019, Jan Hubicka wrote:
> >
> > > Hi,
> > > this patch makes nonoverlapping_component_refs_since_match_p to accept
> > > paths with non-trivial MEM_REFs and TMRs assuming that they have same
> > > semantics.
> >
> > Hmm. We'll never get any TARGET_MEM_REFs wrapped with
> > ha
Hi Richard(s),
I am trying to tackle PR88915 and get GCC to further vectorize the
"fallback" loop when doing loop versioning as it does when loop
versioning is not required.
I have a prototype patch that needs further testing, but at first glance
it seems to be achieving the desired outcome.
On Thu, Jul 11, 2019 at 12:49:44PM +0100, Gaius Mulley wrote:
> Matthias Klose writes:
> > powerpc64le-linux-gnu fails to build (search for "unfinished" in the build
> > log)
> >
> > during RTL pass: final
> > ../../src/gcc/gm2/gm2-libs-coroutines/SYSTEM.def: In function
> > '_M2_SYSTEM_init':
>
On 7/6/19 3:55 AM, Ville Voutilainen wrote:
Blargh!
But that's fine; the result of copy is not stored in a constexpr
variable, but the function return
is static_asserted so we have sufficiently tested that std::copy is
indeed constexpr-compatible
since it appears in a function that is evaluated
On Thu, Jul 11, 2019 at 01:25:18PM +0100, Nix wrote:
> On 10 Jul 2019, Segher Boessenkool spake thusly:
>
> > On Fri, Jul 05, 2019 at 07:28:12PM +0100, Nix wrote:
> >> On 5 Jul 2019, Richard Biener said:
> >>
> >> > On Fri, Jul 5, 2019 at 12:21 AM Indu Bhagat
> >> > wrote:
> >> >> CTF, at this
Fixed.
--Sunil Pandey
i386: Add AVX512 unaligned intrinsics
__m512i _mm512_loadu_epi64( void * sa);
void _mm512_storeu_epi64(void * d, __m512i a);
__m512i _mm512_loadu_epi32( void * sa);
void _mm512_storeu_epi32(void * d, __m512i a);
void _mm256_storeu_epi64(void * d, __m256i a);
void _mm_storeu
> After your patch does behavior change when trying to break on a line
> with a return stmt inside a debugger?
Note that every patch in the series was tested against GDB too, so hopefully
this would have been caught... But the answer is no, see lower_gimple_return:
/* Generate a goto statemen
Segher Boessenkool writes:
> On Thu, Jul 11, 2019 at 12:49:44PM +0100, Gaius Mulley wrote:
>> Matthias Klose writes:
>> > powerpc64le-linux-gnu fails to build (search for "unfinished" in the build
>> > log)
>> >
>> > during RTL pass: final
>> > ../../src/gcc/gm2/gm2-libs-coroutines/SYSTEM.def:
On 7/11/19 3:02 AM, Jakub Jelinek wrote:
On Thu, Jul 11, 2019 at 08:48:52AM +0200, Martin Liška wrote:
--- a/gcc/c-family/c-opts.c
+++ b/gcc/c-family/c-opts.c
@@ -501,6 +501,8 @@ c_common_handle_option (size_t scode, const char *arg,
HOST_WIDE_INT value,
flag_use_repository = value;
Attached is a patch that adds a new parameter to limit the number
of SSA_NAME assignments for GCC to follow in iterative or recursive
algorithms. Purely as a proof of concept the patch introduces
the parameter into -Warray-bounds where the warning follows
POINTER_PLUS (and ASSERT_EXPR) assignment
This patch recognises Modula-2 as language for the traceback table,
fixing the problem shown in
https://gcc.gnu.org/ml/gcc-patches/2019-07/msg00848.html .
Committing to trunk, and committing a variant to the 9 branch.
Segher
2019-07-11 Segher Boessenkool
* config/rs6000/rs6000-logu
On Thu, Jul 11, 2019 at 2:34 PM Segher Boessenkool
wrote:
>
> This patch recognises Modula-2 as language for the traceback table,
> fixing the problem shown in
> https://gcc.gnu.org/ml/gcc-patches/2019-07/msg00848.html .
The value "8" is predefined in the ABI and AIX headers as the
"language indi
On Thu, Jul 11, 2019 at 6:54 PM Sunil Pandey wrote:
>
> Fixed.
>
> --Sunil Pandey
>
> i386: Add AVX512 unaligned intrinsics
>
> __m512i _mm512_loadu_epi64( void * sa);
> void _mm512_storeu_epi64(void * d, __m512i a);
> __m512i _mm512_loadu_epi32( void * sa);
> void _mm512_storeu_epi32(void * d, __
I missed the big preceding comment. It has all other values, so
let's put this one there, as well.
2019-07-11 Segher Boessenkool
* config/rs6000/rs6000-logue.c: Add Modula-2 to comment.
---
gcc/config/rs6000/rs6000-logue.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff
As I mentioned in patch #8, I needed to refine the calculation of what type of
address offset it used on the PowerPC for particular loads and stores.
The motivation is that the new prefixed instructions that future processors
may support have improved instruction encodings, and the prefixed form o
This adds the new atomic types from C++2a, as proposed by P0019 and
P0020. To reduce duplication the calls to the compiler's atomic
built-ins are wrapped in new functions in the __atomic_impl namespace.
These functions are currently only used by std::atomic
and std::atomic_ref but could also be us
* doc/xml/manual/configure.xml: Improve documentation of
--enable-libstdcxx-time option.
Committed to trunk.
commit 6a7d6b5ea112fd5c14d5af2394817178293ac934
Author: redi
Date: Thu Jul 11 19:43:32 2019 +
Improve docs for --enable-libstdcxx-time=rt
* do
On Wed, Jul 10, 2019 at 05:17:48PM -0400, Michael Meissner wrote:
> +extern alias_set_type get_pc_relative_alias_set (void);
I'd just call it "pcrel", not "pc_relative", just like everywhere else?
> @@ -7785,7 +7787,7 @@ bool
> toc_relative_expr_p (const_rtx op, bool strict, const_rtx *tocrel_ba
On Thu, Jul 11, 2019 at 02:52:03PM -0500, Segher Boessenkool wrote:
> On Wed, Jul 10, 2019 at 05:17:48PM -0400, Michael Meissner wrote:
> > +extern alias_set_type get_pc_relative_alias_set (void);
>
> I'd just call it "pcrel", not "pc_relative", just like everywhere else?
>
> > @@ -7785,7 +7787,7
[ Please do not send patches as replies. ]
On Thu, Jul 11, 2019 at 08:11:52AM -0400, Michael Meissner wrote:
> In a future patch, I plan to introduce a new function that says whether an
> address is prefixed based on the address format (D-form, DS-form, DQ-form)
> used
> by the instruction. I pl
On Thu, Jul 11, 2019 at 04:09:44PM -0400, Michael Meissner wrote:
> On Thu, Jul 11, 2019 at 02:52:03PM -0500, Segher Boessenkool wrote:
> > On Wed, Jul 10, 2019 at 05:17:48PM -0400, Michael Meissner wrote:
> > > +extern alias_set_type get_pc_relative_alias_set (void);
> >
> > I'd just call it "pcr
This Go frontend patch by Cherry Zhang ensures correct evaluation
order in type hash/equality functions. The type hash and equality
functions are generated after the order_evaluations pass. They may
contain shortcut operators and Set_and_use_temporary_expressions (e.g.
from lowering a Binary_expr
...
We've already touched on the need to limit the backwards walk out of
this code. Limiting based on the product of # phi args * number of phis
visited, recursion depth, or number of SSA_NAME_DEF_STMTs visited all
seem reasonable to me.
I do think Richi's suggestion for figuring out a suitable
On Mon, Jul 8, 2019 at 12:39 AM JiangNing OS
wrote:
>
> Hi Jeff and Richard B.,
>
> Following your tips, I've found a much simpler solution in tree-ssa-phiopt.c.
> Attached is the new patch. Review again, please!
/* Prove that we can move the store down. We could also check
TREE_THIS_NOT
on 2019/7/11 下午9:55, Richard Sandiford wrote:
> Kewen.Lin writes:
>> + /* Emit a hint if the fallthrough target of current basic block
>> +isn't the one placed right next. */
>> + else if (EDGE_COUNT (bb->succs) > 0)
>> + {
>> +
Christophe Lyon writes:
> In FDPIC, we need to make sure __do_global_dtors_aux and frame_dummy
> are referenced by their address, not by pointers to the function
> descriptors.
>
> 2019-XX-XX Christophe Lyon
> Mickaël Guêné
>
> * libgcc/crtstuff.c: Add support for FDPIC.
>
> Change
Christophe Lyon writes:
> The new arm-uclinuxfdpiceabi target behaves pretty much like
> arm-linux-gnueabi. In order the enable the same set of features, we
> have to update several configure scripts that generally match targets
> like *-*-linux*: in most places, we add *-uclinux* where there is
>
83 matches
Mail list logo