https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87902
--- Comment #6 from Segher Boessenkool ---
Oh sure, if all you want to do is extend the prepare_shrinkwrap function,
that just works there and it doesn't need to do a lot of profitability
trade-offs. However it isn't very effective there. It's
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85562
--- Comment #4 from Eric Gallager ---
(In reply to prathamesh3492 from comment #3)
> Fix for PR85734 also fixes this bug.
That one is fixed on trunk, apparently. So, same for this one?
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84648
--- Comment #4 from bin cheng ---
Author: amker
Date: Thu Nov 15 03:44:49 2018
New Revision: 266171
URL: https://gcc.gnu.org/viewcvs?rev=266171&root=gcc&view=rev
Log:
PR tree-optimization/84648
* tree-ssa-loop-niter.c (adjust_co
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56334
sandra at gcc dot gnu.org changed:
What|Removed |Added
Status|UNCONFIRMED |RESOLVED
CC|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56334
--- Comment #5 from sandra at gcc dot gnu.org ---
Author: sandra
Date: Thu Nov 15 02:55:26 2018
New Revision: 266170
URL: https://gcc.gnu.org/viewcvs?rev=266170&root=gcc&view=rev
Log:
2018-11-15 Sandra Loosemore
PR other/56334
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88029
Bug ID: 88029
Summary: [9 Regression] ICE in execute_todo, at passes.c:1974
Product: gcc
Version: 9.0
Status: UNCONFIRMED
Keywords: ice-checking, ice-on-valid-code
Severi
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=45225
Marek Polacek changed:
What|Removed |Added
Status|UNCONFIRMED |RESOLVED
CC|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87994
--- Comment #7 from kargl at gcc dot gnu.org ---
(In reply to Dominique d'Humieres from comment #6)
> AFAICT the patch in comment 5 fixes the tests in comments 1 and 5, but not
> the test in comment 0.
% cat a.f90
program p
real :: a, b
dat
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=31377
Eric Gallager changed:
What|Removed |Added
CC||nickc at gcc dot gnu.org
--- Comment #2
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55102
sandra at gcc dot gnu.org changed:
What|Removed |Added
CC||sandra at gcc dot gnu.org
---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55102
--- Comment #5 from sandra at gcc dot gnu.org ---
Author: sandra
Date: Thu Nov 15 00:41:10 2018
New Revision: 266168
URL: https://gcc.gnu.org/viewcvs?rev=266168&root=gcc&view=rev
Log:
2018-11-14 Sandra Loosemore
PR lto/55102
P
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56700
--- Comment #5 from sandra at gcc dot gnu.org ---
Author: sandra
Date: Thu Nov 15 00:41:10 2018
New Revision: 266168
URL: https://gcc.gnu.org/viewcvs?rev=266168&root=gcc&view=rev
Log:
2018-11-14 Sandra Loosemore
PR lto/55102
P
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87994
--- Comment #6 from Dominique d'Humieres ---
AFAICT the patch in comment 5 fixes the tests in comments 1 and 5, but not the
test in comment 0.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88025
Dominique d'Humieres changed:
What|Removed |Added
Keywords||ice-on-invalid-code
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88026
--- Comment #2 from toe-ger at web dot de ---
Workaround that seems to generally work:
Change deduction guide to
template
S(T&&)->S>;
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87994
kargl at gcc dot gnu.org changed:
What|Removed |Added
CC||kargl at gcc dot gnu.org
--- C
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87994
kargl at gcc dot gnu.org changed:
What|Removed |Added
Priority|P3 |P4
--- Comment #4 from kargl a
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88011
--- Comment #4 from boger at gcc dot gnu.org ---
Created attachment 45005
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=45005&action=edit
Hack workaround to show bad loop
Through my debugging I found that if I add the print statement as sh
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88027
--- Comment #3 from acsawdey at gcc dot gnu.org ---
This appears to have to do with alignment. In this test case,
expand_block_clear() sees alignment of only 8 bits for the pointer p. If you
declare a local struct st and pass that to __builtin_mem
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87718
--- Comment #5 from Vladimir Makarov ---
In general moving from propagation of hard regs is good thing for RA.
Although there are exception as this PR.
The problem starts with IRA. It decides that r91 should be a general regs
based on cos
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88027
acsawdey at gcc dot gnu.org changed:
What|Removed |Added
CC||acsawdey at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88028
--- Comment #2 from Marek Polacek ---
ICE started with r240802. Before that:
88028.C: In instantiation of ‘constexpr const auto R::h’:
88028.C:16:34: required from ‘struct R’
88028.C:23:24: required from here
88028.C:16:34: error: invalid u
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87893
Jakub Jelinek changed:
What|Removed |Added
CC||jakub at gcc dot gnu.org
--- Comment #2
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88028
Marek Polacek changed:
What|Removed |Added
Keywords||ice-on-valid-code
--- Comment #1 from Ma
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88028
Bug ID: 88028
Summary: internal compiler error: in reshape_init_r, at
cp/decl.c:6159
Product: gcc
Version: 9.0
Status: UNCONFIRMED
Severity: normal
Pr
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88027
--- Comment #1 from Michael Meissner ---
Created attachment 45004
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=45004&action=edit
File that shows the problem
I changed the test not to return 0 between showing the test and the code
generat
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88027
Michael Meissner changed:
What|Removed |Added
Target||powerpc64-linux-gnu-*,
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80864
Marek Polacek changed:
What|Removed |Added
Known to work||4.9.4
Target Milestone|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61727
sandra at gcc dot gnu.org changed:
What|Removed |Added
CC||sandra at gcc dot gnu.org
---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88027
Bug ID: 88027
Summary: PowerPC generates slightly weird code for memset
Product: gcc
Version: 9.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: ta
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88026
--- Comment #1 from toe-ger at web dot de ---
Godbolt decided to swap the output from gcc and msvc again. Sorry for that.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64035
Marek Polacek changed:
What|Removed |Added
Status|NEW |RESOLVED
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82738
sandra at gcc dot gnu.org changed:
What|Removed |Added
CC||sandra at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82738
Bug 82738 depends on bug 59658, which changed state.
Bug 59658 Summary: Document -f* flags enabled by -Og
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59658
What|Removed |Added
--
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59658
sandra at gcc dot gnu.org changed:
What|Removed |Added
Status|NEW |RESOLVED
Resolution|-
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59832
Marek Polacek changed:
What|Removed |Added
Status|NEW |RESOLVED
CC|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87989
--- Comment #3 from Jonathan Wakely ---
It might be related to Bug 86246 then.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59658
--- Comment #4 from sandra at gcc dot gnu.org ---
Author: sandra
Date: Wed Nov 14 20:05:13 2018
New Revision: 266162
URL: https://gcc.gnu.org/viewcvs?rev=266162&root=gcc&view=rev
Log:
2018-11-14 Sandra Loosemore
PR middle-end/59658
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80864
Marek Polacek changed:
What|Removed |Added
CC||mpolacek at gcc dot gnu.org
--- Comment
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80864
Marek Polacek changed:
What|Removed |Added
CC||janniksilvanus at gmail dot com
--- Comm
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86931
Marek Polacek changed:
What|Removed |Added
Status|NEW |RESOLVED
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88025
kargl at gcc dot gnu.org changed:
What|Removed |Added
Priority|P3 |P4
Status|UNCONFIR
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87896
Jakub Jelinek changed:
What|Removed |Added
Status|NEW |RESOLVED
CC|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87468
--- Comment #5 from Jakub Jelinek ---
*** Bug 87896 has been marked as a duplicate of this bug. ***
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87898
Jakub Jelinek changed:
What|Removed |Added
Summary|[8/9 Regression] ICE in |[8 Regression] ICE in
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87989
Jakub Jelinek changed:
What|Removed |Added
Status|UNCONFIRMED |NEW
Last reconfirmed|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88006
Nathan Sidwell changed:
What|Removed |Added
Status|UNCONFIRMED |RESOLVED
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87462
--- Comment #4 from Nathan Sidwell ---
Author: nathan
Date: Wed Nov 14 19:30:47 2018
New Revision: 266158
URL: https://gcc.gnu.org/viewcvs?rev=266158&root=gcc&view=rev
Log:
[debug/88006] -fdebug-types-section gives undefined ref
https://gcc.gnu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88006
--- Comment #1 from Nathan Sidwell ---
Author: nathan
Date: Wed Nov 14 19:30:47 2018
New Revision: 266158
URL: https://gcc.gnu.org/viewcvs?rev=266158&root=gcc&view=rev
Log:
[debug/88006] -fdebug-types-section gives undefined ref
https://gcc.gnu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87462
Nathan Sidwell changed:
What|Removed |Added
Status|NEW |RESOLVED
CC|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87977
Jakub Jelinek changed:
What|Removed |Added
Status|ASSIGNED|RESOLVED
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88026
Bug ID: 88026
Summary: Explicit deduction guide fails for move-only type
Product: gcc
Version: 8.2.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87995
--- Comment #1 from Jakub Jelinek ---
Can't reproduce on x86_64-linux, tried 2048 invocations of the testcase in a
row, times various OMP_NUM_THREADS settings (32, 64, 1, 2, 4, 8). All on
16c32t machine. So, can you build it with additional -g
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87468
Jakub Jelinek changed:
What|Removed |Added
CC||jakub at gcc dot gnu.org
--- Comment #4
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59658
sandra at gcc dot gnu.org changed:
What|Removed |Added
CC||sandra at gcc dot gnu.org
---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55227
J.R. Heisey changed:
What|Removed |Added
CC||jr at heisey dot org
--- Comment #3 from J
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87156
Jakub Jelinek changed:
What|Removed |Added
CC||zsojka at seznam dot cz
--- Comment #9 f
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87285
Jakub Jelinek changed:
What|Removed |Added
Status|UNCONFIRMED |RESOLVED
CC|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88023
Martin Liška changed:
What|Removed |Added
Status|UNCONFIRMED |RESOLVED
CC|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88011
--- Comment #3 from boger at gcc dot gnu.org ---
Created attachment 45003
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=45003&action=edit
Reproducer testcase for gccgo testresults failures in GCD
You should be able to build this using gccg
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88015
--- Comment #4 from Martin Liška ---
(In reply to David Malcolm from comment #2)
> Actually, I'm still not able to reproduce this, but the fix seems obvious;
> am working on it.
I see it on multiple examples:
$ g++ /home/marxin/Programming/gcc/
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88025
Bug ID: 88025
Summary: [7/8/9 Regression] ICE in gfc_apply_init, at
fortran/expr.c:4468
Product: gcc
Version: 9.0
Status: UNCONFIRMED
Severity: normal
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79426
--- Comment #8 from G. Steinmetz ---
And to make the picture complete, if you _add_ another integer
(regarding comment 5), it compiles silently (but breaks at run time).
$ cat z2.f90
program p
type t
integer :: a
integer :: b
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88022
Martin Liška changed:
What|Removed |Added
Status|UNCONFIRMED |WAITING
Last reconfirmed|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79426
--- Comment #7 from G. Steinmetz ---
And with type "t" stripped down to a class only, respectively.
Case analogous to the one in comment 3.
$ cat zc2.f90
program p
type t
class(*), pointer :: u(:)
end type
type(t) :: z
select
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79426
--- Comment #6 from G. Steinmetz ---
In all za* examples above reduce the type by an integer variable.
Now type "t" contains one integer and one class(*) :
$ cat zb2.f90
program p
type t
integer :: a
class(*), pointer :: u(:)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79426
G. Steinmetz changed:
What|Removed |Added
CC||gs...@t-online.de
--- Comment #5 from G.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79440
--- Comment #4 from G. Steinmetz ---
Reduced test case from comment 0 :
$ cat z3.f90
module m
type t
end type
type t2
class(t), pointer :: a
end type
type, extends(t2) :: t3
end type
type t4
class(t2), pointer
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88011
--- Comment #2 from boger at gcc dot gnu.org ---
(In reply to Richard Biener from comment #1)
> C testcase anyone? ;) I never succeeded extracting anything meaningful from
> the Go testsuite logs to be able to reproduce sth (no cut&paste possible
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87521
Bruno Bugs changed:
What|Removed |Added
Status|UNCONFIRMED |RESOLVED
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87521
--- Comment #3 from Jonathan Wakely ---
What really matters here is triviality of the destructor, and that isn't
affected by the user-declared defaulted dtor.
Clang fails this test, because memcpy overwrites the tail padding:
#include
#include
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88024
Bug ID: 88024
Summary: At -O0 and -Og, GCC should warn if you explicitly try
to enable an option that is ignored
Product: gcc
Version: 9.0
Status: UNCONFIRMED
S
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85594
Arseny Solokha changed:
What|Removed |Added
CC||asolokha at gmx dot com
--- Comment #2
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87521
--- Comment #2 from Jonathan Wakely ---
The C++03 definition of POD struct (which is what matters for the ABI) requires
that it has no user-defined destructor.
Your type has a user-declared destructor, which is implicitly-defined when
odr-used.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86739
--- Comment #11 from Jakub Jelinek ---
Author: jakub
Date: Wed Nov 14 16:43:38 2018
New Revision: 266152
URL: https://gcc.gnu.org/viewcvs?rev=266152&root=gcc&view=rev
Log:
PR bootstrap/86739
* hash-map.h (hash_map::iterator::refe
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87521
--- Comment #1 from Jonathan Wakely ---
The meaning of "user-declared" in C++03 is closer to "has a function body" than
the meaning in C++11, where it includes defaulted definitions.
A defaulted definition in C++11 is equivalent to an implicit (i
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88022
--- Comment #3 from Jakub Jelinek ---
The dynamic offset code has the problem that a) it is usually larger b) usually
slower c) ABI incompatible.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88022
--- Comment #2 from chefmax at gcc dot gnu.org ---
I think nothing prevents us from trying several ranges, the question is whether
upstream guys will accept this...
I've just noticed that the code for dynamic shadow offset is already present in
li
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88018
--- Comment #2 from Jakub Jelinek ---
Created attachment 45002
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=45002&action=edit
gcc9-pr88018.patch
Untested fix.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88023
Bug ID: 88023
Summary: [9 Regression] ICE: verify_ssa failed (error:
definition in block 39 does not dominate use in block
34)
Product: gcc
Version: 9.0
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86891
Jakub Jelinek changed:
What|Removed |Added
CC||collison at gcc dot gnu.org,
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86575
Michael Matz changed:
What|Removed |Added
Summary|[7/8/9 Regression] |[7/8 Regression]
|-Wimp
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85925
--- Comment #16 from Eric Botcazou ---
Then people realized that there was a problem if the SUBREGs were spilled onto
the stack at some point, hence an additional test on LOAD_EXTEND_OP:
r8787 | wilson | 1995-01-21 03:23:10 +0100 (Sat, 21 Jan 19
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88015
seurer at gcc dot gnu.org changed:
What|Removed |Added
CC||seurer at gcc dot gnu.org
---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71026
--- Comment #12 from Wilco ---
It looks the only case left to do is f5:
x * C <= 0.0 -> x <= 0.0 if C >= 1.0
x * C <= 0.0 -> x < FLT_MIN/C if C < 1.0
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86575
--- Comment #4 from Michael Matz ---
Author: matz
Date: Wed Nov 14 15:43:54 2018
New Revision: 266148
URL: https://gcc.gnu.org/viewcvs?rev=266148&root=gcc&view=rev
Log:
Fix PR middle-end/86575
PR middle-end/86575
* gimplify.c (c
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85925
--- Comment #15 from Eric Botcazou ---
OK, it's probably time to concede final defeat, although this will bring back
quite a few redundant extensions on RISC architectures like ARM and SPARC.
For the records, here's a bit of history about this s
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88015
--- Comment #2 from David Malcolm ---
Actually, I'm still not able to reproduce this, but the fix seems obvious; am
working on it.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88015
David Malcolm changed:
What|Removed |Added
Status|UNCONFIRMED |ASSIGNED
Assignee|unassigned a
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87985
Richard Biener changed:
What|Removed |Added
Known to work||9.0
--- Comment #5 from Richard Biener
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87470
Ian Lance Taylor changed:
What|Removed |Added
Status|UNCONFIRMED |RESOLVED
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88009
Dominique d'Humieres changed:
What|Removed |Added
Status|UNCONFIRMED |NEW
Last reconfirmed|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87985
--- Comment #4 from Richard Biener ---
Author: rguenth
Date: Wed Nov 14 14:33:44 2018
New Revision: 266147
URL: https://gcc.gnu.org/viewcvs?rev=266147&root=gcc&view=rev
Log:
2018-11-14 Richard Biener
PR middle-end/87985
* tre
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88018
Jakub Jelinek changed:
What|Removed |Added
Status|UNCONFIRMED |ASSIGNED
CC|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87946
Dominique d'Humieres changed:
What|Removed |Added
Keywords||ice-on-valid-code
Sta
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87917
Richard Biener changed:
What|Removed |Added
Status|NEW |ASSIGNED
Assignee|unassigned
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87709
Jonathan Wakely changed:
What|Removed |Added
Last reconfirmed|2018-10-23 00:00:00 |2018-11-14
See Also|https://
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87980
Dominique d'Humieres changed:
What|Removed |Added
Status|UNCONFIRMED |NEW
Last reconfirmed|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88020
Jonathan Wakely changed:
What|Removed |Added
Status|NEW |RESOLVED
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87709
Jonathan Wakely changed:
What|Removed |Added
CC||toe-ger at web dot de
--- Comment #5 f
1 - 100 of 172 matches
Mail list logo