The backend emits 16 bit memory loads for single element character
vector. As a result the character will not be right justified in the
GPR.
gcc/ChangeLog:
2019-12-16 Andreas Krebbel
PR target/92950
* config/s390/vector.md ("mov" for V_8): Replace lh, lhy,
and lhrl wi
Ping.
On 12/10/19 6:54 PM, Tobias Burnus wrote:
Nonallocatable, nonpointer array arguments (of assumed shape) are
special as they get a get an array descriptor ('arg') as argument but
create a local variable which accesses the actual data ('arg.0 =
arg->data').
With OPTIONAL, there are/were
Hello,
Some tests from gcc/testsuite/gcc.target/aarch64/aapcs64
resort to the abitest.S source, which defines a few weak symbols:
...
.weak testfunc
.weak testfunc_ptr
.weak saved_return_address
The attached patch is a proposal to prevent the execution of
those tests in configurat
On Mon, Dec 16, 2019 at 1:25 AM Olivier Hainque wrote:
>
> Hello,
>
> Some tests from gcc/testsuite/gcc.target/aarch64/aapcs64
> resort to the abitest.S source, which defines a few weak symbols:
>
> ...
> .weak testfunc
> .weak testfunc_ptr
> .weak saved_return_address
>
> The attac
Olivier Hainque writes:
> Hello,
>
> Some tests from gcc/testsuite/gcc.target/aarch64/aapcs64
> resort to the abitest.S source, which defines a few weak symbols:
>
> ...
> .weak testfunc
> .weak testfunc_ptr
> .weak saved_return_address
>
> The attached patch is a proposal to preven
The Ada RM states that "For a formal access-to-subprogram subtype, the
designated profiles of the formal and the actual shall be subtype
conformant." (section 12.5.4). This requires checking if both types can
or can't be null.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-12-16 Ghjuvan
This merges the implementation of the C.6(19) clause present for In Out
and Out parameters in the front-end (without warning) with that present
in gigi (with a warning), and puts the result in the front-end with a
warning. This means that the compiler will now warn in all cases.
Tested on x86_64-
The compiler no longer warns about unused use clauses, unused
declarations, and the like, if errors were already detected. This is an
improvement, because the errors can hide the relevant uses, and thus
cause things to look "unused" when they are not.
Tested on x86_64-pc-linux-gnu, committed on tr
Ignored ghost code should only be semantically analyzed, but as it is
not contributing to any executable code, no restriction violation should
result from analyzing such code. Add protections to that effect in the
analysis of subprogram calls.
Tested on x86_64-pc-linux-gnu, committed on trunk
201
This patch fixes a bug in which if a Size attribute occurs in a pragma
Compile_Time_Error, and the pragma occurs in a generic unit that is
instantiated in another generic unit, and that other generic unit is
instantiated, then the compiler does not know the value of Size at
compile time. It issues
This change implements Ada 2020 AI12-0208 which adds support for
infinite precision integers and rationals via new packages in the
Ada.Numerics.Big_Numbers hierarchy. A default implementation using
System.Generic_Bignum (made generic out of the existing System.Bignum)
is enabled everywhere, and an
This implements the new 4 legality rules added to C.6(13) by AI12-0128
and pertaining to nonatomic subcomponents of atomic types and objects.
This also implements the counterpart of the last 2 rules for the GNAT
specific aspect/pragma Volatile_Full_Access (they were only partially
implemented befo
This fixes a small oversight in the part of the Is_Atomic_Or_VFA_Object
predicate which detects the Volatile_Full_Access aspect/pragma. This
aspect/pragma can also be put on individual components in record types
and, more generally, components of arrays or records whose type is
subject to the aspe
This patch fixes an incorrect syntax error. In particular, in an example
like the following:
procedure Main is
procedure Imported with Import;
begin
null;
end;
where there is a subprogram declaration with an Import aspect
specification, and the declaration is indented the s
This patch adds support for Ada 202x new packages adding support for
atomic operations (Exchange, Test and Set, Fetch Add/Sub).
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-12-16 Arnaud Charlet
gcc/ada/
* libgnat/s-aotase.adb, libgnat/s-aotase.ads,
libgnat/s-atoope.
This implements the aforementioned AI in all versions of the language
since it is classified as a Binding Interpretation. The main visible
effects are to turn errors given for the Pack aspect/pragma into mere
warnings and to give new errors for representation clauses that do not
abide by the align
The syntax rules do not allow a null procedure as a subunit, and the
compiler was correctly rejecting that. This patch improves the error
message.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-12-16 Bob Duff
gcc/ada/
* sem_ch10.adb (Analyze_Subunit): Give an error if the sub
This just exports the version of the language internally used in the
front-end of the compiler through the C interface.
Tested on x86_64-pc-linux-gnu, committed on trunk
2019-12-16 Eric Botcazou
gcc/ada/
* fe.h (Ada_Version_Type): New typedef.
(Ada_Version): Declare.
This makes sure that the 4 representation aspects defined (or not) in
C.6 and supported by GNAT, that is to say Atomic, Independent, Volatile
and Volatile_Full_Access, are fully propagated through renaming
declarations.
This also overhauls the implementation of the 4 associated predicates
Is_[Aspe
This removes the check on aliased components recently added to the
Check_Strict_Alignment procedure as part of the implementation of
AI12-0001 because it causes a build failure for Florist on 32-bit
platforms and might also affect other legacy codebases.
Tested on x86_64-pc-linux-gnu, committed on
This change makes sure that the front-end expands the renamings of
subcomponents of atomic or Volatile_Full_Access objects, i.e. the
references in the renamed object are elaborated and the result is
substituted for the renaming in the expanded code.
This means that code generators implementing ren
This fixes a couple of oversights in the implementation of the new
legality rules added to the C.6(13) clause by AI12-0128:
1. the new code does not properly deal with an Atomic_Components
aspect/pragma put directly on an array object declaration,
2. the new Is_Subcomponent_Of_Atomic_Obj
This fixes a small glitch in the handling of Component_Size clauses:
when the component type is a biased integer type, the compiler builds
a subtype with the size prescribed by the clause, but sets it both as
the Esize and the RM_Size of this subtype. Now this size might not be
a multiple of the s
Hello,
within a compile cluster, only the preprocessed output of GCC is transferred to
remote nodes for compilation.
When GCC produces advanced diagnostics (with -fdiagnostics-show-caret), e.g.
prints out the affected source
line and fixit hints, it attempts to read the source file again, even
Hi Andrew,
> On 16 Dec 2019, at 10:54, Andrew Pinski wrote:
>
> Why does VxWorks not have weak symbol support when it is an elf
> target? I can understand it not having support in a loader but these
> symbols should all be resolved at build time.
VxWorks has so called "Dynamic Kernel Modules",
On Wed, Dec 11, 2019 at 4:24 AM 玩还有 wrote:
>
> Hi:
> Currently smax/smin pattern added by r274481 cause some regression
> in 525.x264_r by 8% with -O2 -march=corei7. The reason is some IA
> backends (contain TARGET_SSE4_1) will do transform for simple abs
> (using rshift, xor and sub) to pmax/pm
I just remembered that the run tests all fail on cross builds.
This patch includes the effective target check to determine whether a hwasan
binary can be run on a given target.
We then add that target requirement to all tests which need to run.
Adding hwasan tests.
Only interesting thing here
> ince except for Bonnell,
>
> 01 fbadd%edi,%ebx
>
> is faster and shorter than
>
> 8d 1c 1f lea(%rdi,%rbx,1),%ebx
>
> we should use add for a = a + b and a = b + a when possible if not
> optimizing for Bonnell.
>
> Tested on x86-64.
>
> gcc/
>
> PR target/92807
> On 16 Dec 2019, at 11:19, Richard Sandiford wrote:
>> * gcc.target/aarch64/aapcs64/aapcs64.exp: Guard tests using
>> abitest.S by check_weak_available.
>
> OK, thanks.
Great, thanks for your prompt feedback Richard!
As a side question, we have quite a few failures or aarch64
spec
Hi all,
This patch is part of a series adding support for Armv8.6-A features.
It depends on the Arm Armv8.6-A CLI patch,
https://gcc.gnu.org/ml/gcc-patches/2019-11/msg02195.html.
It also depends on the Armv8.6-A effective target checking patch,
https://gcc.gnu.org/ml/gcc-patches/2019-12/msg00857
Hello,
In libstdc++, the test for the presence of setrlimit on the target is currently
performed in C as opposed to the other similar tests there. This leads on only a
warning being issued during configure as opposed to the expected error, and thus
improper definition of _GLIBCXX_RES_LIMITS.
This
Hi all,
This patch is part of a series adding support for Armv8.6-A features.
It depends on the Armv8.6-A effective target checking patch,
https://gcc.gnu.org/ml/gcc-patches/2019-12/msg00857.html.
This patch adds intrinsics for matrix multiply-accumulate operations
including vmmlaq_s32, vmmlaq_
Olivier Hainque writes:
>> On 16 Dec 2019, at 11:19, Richard Sandiford
>> wrote:
>
>>> * gcc.target/aarch64/aapcs64/aapcs64.exp: Guard tests using
>>> abitest.S by check_weak_available.
>>
>> OK, thanks.
>
> Great, thanks for your prompt feedback Richard!
>
> As a side question, we have
On Tue, 2019-12-03 at 18:17 +0100, Jakub Jelinek wrote:
> On Tue, Dec 03, 2019 at 11:52:13AM -0500, David Malcolm wrote:
> > > > Our plugin "interface" as such is very broad.
> > >
> > > Just to sneak in here I don't like exposing our current plugin
> > > "non-
> > > API"
> > > more. In fact I'd
Hi,
On Tue, Nov 26 2019, Michael Witten wrote:
> [...]
> From what I've read, `-Wmaybe-uninitialized' is essentially
> customized for `-O2',
I don't think that is true. It can be perfectly useful -O1 and there
are many nasty false positives at -O2 too.
> [...]
> * If `-Wmaybe-uninitia
Hi Jeff,
On Sat, Dec 07 2019, Jeff Law wrote:
> [...]
> The whole point behind the uninitialized warning is to capture cases
> where objects may not be properly initialized. For modern code the
> simple cases typically "just work". What is by far the most
> interesting cases are those with compl
Richard Biener writes:
> On December 14, 2019 11:43:48 AM GMT+01:00, Richard Sandiford
> wrote:
>>Richard Biener writes:
>>> On December 13, 2019 10:12:40 AM GMT+01:00, Richard Sandiford
>> wrote:
Richard Biener writes:
The AArch64 port emits an error if calls pass values of SVE ty
It turns out we still used hardcoded register numbers for the CR fields
in some cases, and they now use the wrong numbers since we renumbered
most of the registers. So let's use the symbolic names, instead.
Committing to trunk.
Segher
2019-12-16 Segher Boessenkool
* config/rs6000/
Ping: https://gcc.gnu.org/ml/gcc-patches/2019-12/msg00642.html
Jason, I'm on PTO until 1/6 starting this Thursday, with no
connectivity. If there are any further changes to make to
the patch I will need to make them before then, or otherwise
after I get back in January.
On 12/9/19 5:29 PM, Mart
Hi,
since r278669 (fix for PR ipa/91956), IPA-SRA makes sure that the clone
it creates is put into the same same_comdat as the original cgraph_node,
so that it can call private comdats (such as the ipa-split bits of a
comdat that is private).
However, that means that if there is non-comdat caller
Now that the avr backend can support 64-bit floats by means of
configure-options --with-double= and --with-long-double=, this patch
series adds some routines to support it.
It's an ad-hoc, avr-specific implementation in assembly and GNU-C which
is added as a new subfolder in libgcc/config/avr/
Am 16.12.19 um 17:40 schrieb Georg-Johann Lay:
Patch 1/3 is the GCC changes: Documentation and new avr-specific
configure options:
--with-libf7 selects to which level double support from libf7 is added
to libgcc.
--with-double-comparison select what FLOAT_LIB_COMPARE_RETURNS_BOOL
returns.
Johan
Am 16.12.19 um 17:40 schrieb Georg-Johann Lay:
Patch 2/3 is the libgcc additions:
--with-libf7 selects which makefile-snips from libf7 to use.
libgcc/
* config.host (tmake_file) [target=avr]: Add t-libf7,
t-libf7-math, t-libf7-math-symbols as specified by --with-libf7=.
On Fri, 2019-12-13 at 13:10 -0500, David Malcolm wrote:
> gcc/ChangeLog:
> * pretty-print.c (pp_write_text_as_html_like_dot_to_stream):
> New
> function.
> * pretty-print.h (pp_write_text_as_html_like_dot_to_stream):
> New decl.
> ---
> gcc/pretty-print.c | 48
> +
Currently, GCC uses *implicit 'copy'* for variables in a
parallel/kernels construct, even though they are in a data clause of the
enclosing *data construct*.
Example – will currently yield an an implicit 'copy(var)' in the 'parallel
construct':
… acc data copyout(var)
… acc parallel
v
Hi Kyrill
On 11/06/2019 03:59 PM, Kyrill Tkachov wrote:
Hi Mihail,
On 11/4/19 4:49 PM, Kyrill Tkachov wrote:
Hi Mihail,
On 10/23/19 10:26 AM, Mihail Ionescu wrote:
> [PATCH, GCC/ARM, 2/10] Add command line support
>
> Hi,
>
> === Context ===
>
> This patch is part of a patch series to add sup
Hi Kyrill,
On 11/06/2019 04:12 PM, Kyrill Tkachov wrote:
Hi Mihail,
On 10/23/19 10:26 AM, Mihail Ionescu wrote:
[PATCH, GCC/ARM, 3/10] Save/restore FPCXTNS in nsentry functions
Hi,
=== Context ===
This patch is part of a patch series to add support for Armv8.1-M
Mainline Security Extension
Hi Kyrill,
On 11/12/2019 09:55 AM, Kyrill Tkachov wrote:
Hi Mihail,
On 10/23/19 10:26 AM, Mihail Ionescu wrote:
[PATCH, GCC/ARM, 4/10] Clear GPR with CLRM
Hi,
=== Context ===
This patch is part of a patch series to add support for Armv8.1-M
Mainline Security Extensions architecture. Its pur
Andi Kleen writes:
Ping!
> Andi Kleen writes:
>
> Ping!
>
>> Andi Kleen writes:
>>
>> Ping!
>>
>>> Andi Kleen writes:
>>>
>>> Ping!
>>>
From: Andi Kleen
[v4: Rebased on current tree. Avoid some redundant log statements
for locals and a few other fixes. Fix some comments.
Hi Tobias!
On 2019-12-11T13:47:51+0100, Tobias Burnus wrote:
> This patch cleans up the public/private handling in libgomp/openacc.f90:
>
> * module openacc_kinds marked symbols explicitly as public and private
> (but default is public). Make this explicit by a 'PUBLIC' and remove the
> (redund
Hi Paul,
Regtested on FC31/x86_64 - OK for 9- and 10- branches?
OK. Thanks for the patch!
Regards
Thomas
On 12/14/19 4:25 PM, Marek Polacek wrote:
On Fri, Dec 13, 2019 at 05:56:57PM -0500, Jason Merrill wrote:
On 12/13/19 3:20 PM, Marek Polacek wrote:
+ /* Given dynamic_cast(v),
+
+ [expr.dynamic.cast] If C is the class type to which T points or refers,
+ the runtime check logically execu
On 12/16/19 3:55 PM, Jason Merrill wrote:
On 12/14/19 4:25 PM, Marek Polacek wrote:
On Fri, Dec 13, 2019 at 05:56:57PM -0500, Jason Merrill wrote:
On 12/13/19 3:20 PM, Marek Polacek wrote:
+ /* Given dynamic_cast(v),
+
+ [expr.dynamic.cast] If C is the class type to which T points
or ref
Hi Andrew!
On 2019-11-12T13:29:13+, Andrew Stubbs wrote:
> Most of these changes are simply based on the model already defined for
> NVPTX, adapted for GCN as appropriate.
> --- a/libgomp/openacc.f90
> +++ b/libgomp/openacc.f90
> @@ -46,6 +46,7 @@ module openacc_kinds
>! integer (acc_dev
The gfortran.dg/lto/pr87689 test fails as a result of
a -Wstringop-overflow warning. The warning is only enabled for
the C family of languages and LTO but it looks like LTO obviates
this distinction. Last week's enhancement to compute_objsize
seems like the most likely culprit, although the root
On Mon, Dec 16, 2019 at 03:28:29PM -0700, Martin Sebor wrote:
> PR middle-end/92952 - gfortran.dg/lto/pr87689 FAILs
>
> gcc/ChangeLog:
>
> PR middle-end/92952
> * builtins.c (compute_objsize): Adjust offset by the array low bound.
>
> Index: gcc/builtins.c
> =
On 12/9/19 7:29 PM, Martin Sebor wrote:
Just a few nits:
+/* A mapping between a TYPE_DECL for a class and the class_decl_loc_t
+ description above. */
+typedef hash_map class_to_loc_map_t;
+static class_to_loc_map_t class2loc;
I think we can make these members of class_decl_loc_t, now tha
Hi Frederik!
On 2019-11-14T16:35:31+0100, Frederik Harwath wrote:
> this patch implements OpenACC 2.6 "acc_get_property" and related functions.
I'm attaching a version rebased on top of current GCC trunk, as well as
an incremental patch; please review these changes, and merge into yours.
> The
Hi,
another batch of work. Primarily, more of the idea of moving up the
construction of the compound location thus passing it to the
cxx_sizeof_or_alignof* and build_throw functions to obtain better
locations for all the diagnostics issued by the latter. During the work
a few mildly interesti
On 12/12/19 10:16 AM, Richard Sandiford wrote:
As Jason pointed out in the review of the C++ gnu_vector_type_p patch:
https://gcc.gnu.org/ml/gcc-patches/2019-12/msg00173.html
the real fix for the XFAILs in acle/general-c++/gnu_vectors_*.C is to
make same_type_p return false for two types i
On 12/2/19 9:30 AM, Andrew Sutton wrote:
Find attached.
gcc/cp/
* parser.c (cp_parser_constraint_requires_parens): Exclude
attributes
as postfix expressions.
gcc/testsuite/
* g++.dg/concepts-pr92739.C: New test.
The testcase didn't come through
On 11/29/19 6:23 PM, Strager Neds wrote:
I discovered an issue with my patch. I need help resolving it.
Take the following code for example:
template
struct s
{
static inline int __attribute__((section(".testsection"))) var = 1;
};
struct public_symbol {};
It seems we need to unshare even non-CONSTRUCTOR expressions that we are
going to stick in the constexpr_call_table, so we don't end up sharing the
same e.g. ADDR_EXPR between two different functions. I now think I
understand why unsharing CONSTRUCTOR arguments was improving memory
performance: se
On 12/16/19 3:51 PM, Jason Merrill wrote:
On 12/9/19 7:29 PM, Martin Sebor wrote:
Just a few nits:
+/* A mapping between a TYPE_DECL for a class and the class_decl_loc_t
+ description above. */
+typedef hash_map class_to_loc_map_t;
+static class_to_loc_map_t class2loc;
I think we can make
On 12/16/19 3:44 PM, Jakub Jelinek wrote:
On Mon, Dec 16, 2019 at 03:28:29PM -0700, Martin Sebor wrote:
PR middle-end/92952 - gfortran.dg/lto/pr87689 FAILs
gcc/ChangeLog:
PR middle-end/92952
* builtins.c (compute_objsize): Adjust offset by the array low bound.
Index: gcc/built
On Mon, 11 Nov 2019, Maciej W. Rozycki wrote:
> This patch series addresses a problem with the testsuite compiler being
> set up across libatomic, libffi, libgo, libgomp with no correlation
> whatsoever to the target compiler being used in GCC compilation.
> Consequently there in no arrangeme
On Fri, 29 Nov 2019, Maciej W. Rozycki wrote:
> Fix a catastrophic libgo testsuite failure in cross-compilation where
> the shared `libgcc_s' library cannot be found by the loader at run time
> in build-tree testing and consequently all test cases fail the execution
> stage, giving output (here
On Mon, 2 Dec 2019, Maciej W. Rozycki wrote:
> Provide means, in the form of a `--with-toolexeclibdir=' configuration
> option, to override the default installation directory for target
> libraries, otherwise known as $toolexeclibdir. This is so that it is
> possible to get newly-built librari
On Thu, Nov 15, 2018 at 12:31 AM Richard Biener wrote:
>
> On Thu, 15 Nov 2018, Richard Biener wrote:
>
> > On Wed, 14 Nov 2018, Andrew Pinski wrote:
> >
> > > On Fri, May 13, 2016 at 3:51 AM Richard Biener wrote:
> > > >
> > > >
> > > > The following patch adds BIT_FIELD_INSERT, an operation to
On Mon, Dec 16, 2019 at 6:32 PM Andrew Pinski wrote:
>
> On Thu, Nov 15, 2018 at 12:31 AM Richard Biener wrote:
> >
> > On Thu, 15 Nov 2018, Richard Biener wrote:
> >
> > > On Wed, 14 Nov 2018, Andrew Pinski wrote:
> > >
> > > > On Fri, May 13, 2016 at 3:51 AM Richard Biener
> > > > wrote:
> >
On Sat, 14 Dec 2019 00:19:04 +
Julian Brown wrote:
> On Fri, 13 Dec 2019 16:25:25 +0100
> Thomas Schwinge wrote:
>
> > Hi Julian!
> >
> > On 2019-10-29T12:15:01+, Julian Brown
> > wrote:
> > > static int
> > > -find_pointer (int pos, size_t mapnum, unsigned short *kinds)
> > > +fin
Hi,
with Jan's patch commited in r278878 we can use symver attribute for functions
and variables. The symver attribute is designed for replacing toplevel asm
statements containing ".symver" which may be removed by LTO. Unfortunately,
a quick test shown GCC still generates buggy so file with LTO a
72 matches
Mail list logo