Go frontend patch committed: print types in a more readable way

2024-02-05 Thread Ian Lance Taylor
This patch to the Go frontend adds Type::message_name to print types in ways that makes sense to users. As we move toward generics, the error messages need to be able to refer to types in a readable manner. Today we use this new feature in AST dumps. Bootstrapped and ran Go testsuite on x86_64-pc

libgo patch committed: Bump version number

2024-02-05 Thread Ian Lance Taylor
This libgo patch bumps the version number for the GCC 14 release. This is for GCC PR 113668. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline. Ian 7b0597eba6b29387b56b8d6a4b38f3586e6b49a5 diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index ec7e2ab1

Re: [PATCH RFA] build: drop target libs from LD_LIBRARY_PATH [PR105688]

2024-02-07 Thread Ian Lance Taylor
On Tue, Feb 6, 2024 at 6:08 PM Jason Merrill wrote: > > Tested x86_64-pc-linux-gnu. Any thoughts? It still makes sense to me, for what that's worth. Ian > -- 8< -- > > The patch for PR22340 (r104978) moved the adding of TARGET_LIB_PATH to > RPATH_ENVVAR from POSTSTAGE1_HOST_EXPORTS to HOST_EX

Re: Go patch committed: Move lowering pass after check types pass

2024-01-18 Thread Ian Lance Taylor
On Mon, Dec 18, 2023 at 5:32 PM Ian Lance Taylor wrote: > > This Go frontend patch moves the lowering pass after the type > determination and the type checking passes. This lets us simplify > some of the code that determines the type of an expression, which > previously had to

Go patch committed: Don't pass iota value to lowering pass

2024-01-22 Thread Ian Lance Taylor
This patch to the Go frontend stops passing the iota value to the lowering pass. It is no longer used. The iota value is now handled in the determine-types pass. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline. Ian 896148947b9ff4845c8bc334f8eff30f91ff3c9a diff -

Re: [PATCH 5/4] libbacktrace: improve getting debug information for loaded dlls

2024-01-23 Thread Ian Lance Taylor
On Thu, Jan 4, 2024 at 2:33 PM Björn Schäpers wrote: > > Am 03.01.2024 um 00:12 schrieb Björn Schäpers: > > Am 30.11.2023 um 20:53 schrieb Ian Lance Taylor: > >> On Fri, Jan 20, 2023 at 2:55 AM Björn Schäpers wrote: > >>> > >>> From: Björn S

Re: [PATCH 5/4] libbacktrace: improve getting debug information for loaded dlls

2024-01-25 Thread Ian Lance Taylor
On Thu, Jan 25, 2024 at 11:53 AM Björn Schäpers wrote: > > Am 23.01.2024 um 23:37 schrieb Ian Lance Taylor: > > On Thu, Jan 4, 2024 at 2:33 PM Björn Schäpers wrote: > >> > >> Am 03.01.2024 um 00:12 schrieb Björn Schäpers: > >>> Am 30.11.2023 um 20:53 sc

Go patch committed: Move lowering pass after check types pass

2023-12-18 Thread Ian Lance Taylor
This Go frontend patch moves the lowering pass after the type determination and the type checking passes. This lets us simplify some of the code that determines the type of an expression, which previously had to work correctly both before and after type determination. I'm doing this to help with

Re: [PATCH 3/4] libbacktrace: work with aslr on windows

2023-11-30 Thread Ian Lance Taylor
On Mon, Nov 20, 2023 at 11:58 AM Björn Schäpers wrote: > > An updated version, using neither A or W, but just the macro. Thanks. Committed as follows. Ian 1017495bc91d40570f58c37e88ca013164782129 diff --git a/libbacktrace/pecoff.c b/libbacktrace/pecoff.c index 56af4828e27..f976a963bf3 100644 --

Re: Darwin: Replace environment runpath with embedded [PR88590]

2023-11-30 Thread Ian Lance Taylor
On Sun, Oct 22, 2023 at 2:18 PM FX Coudert wrote: > > Thanks a lot Alexandre for the review! This patch changed the files lingo/configure.ac and libgo/configure. Those files live in an upstream repository and should be changed there and then merged into the GCC repo, as described in libgo/README.

Re: [PATCH] libgo, libstdc++: Regenerate GCC_CHECK_ASSEMBLER_HWCAP users

2023-11-30 Thread Ian Lance Taylor
On Thu, Nov 30, 2023 at 1:30 AM Rainer Orth wrote: > > the gcc-autoregen bot correctly complained that the libgo and libstdc++ > configure scripts hadn't been regenerated. I'd have commited the > following as obvious (just whitespace change), but since libgo is > imported from upstream, I'm unce

Re: [PATCH 4/4] libbacktrace: get debug information for loaded dlls

2023-11-30 Thread Ian Lance Taylor
On Fri, Jan 20, 2023 at 2:55 AM Björn Schäpers wrote: > > From: Björn Schäpers > > Fixes https://github.com/ianlancetaylor/libbacktrace/issues/53, except > that libraries loaded after the backtrace_initialize are not handled. > But as far as I can see that's the same for elf. Thanks, but I don't

Re: Darwin: Replace environment runpath with embedded [PR88590]

2023-11-30 Thread Ian Lance Taylor
On Thu, Nov 30, 2023 at 11:56 AM Iain Sandoe wrote: > > > On 30 Nov 2023, at 19:43, Ian Lance Taylor wrote: > > > > On Sun, Oct 22, 2023 at 2:18 PM FX Coudert wrote: > >> > >> Thanks a lot Alexandre for the review! > > > > This patch chang

Re: [PATCH] libgo, libstdc++: Regenerate GCC_CHECK_ASSEMBLER_HWCAP users

2023-11-30 Thread Ian Lance Taylor
On Thu, Nov 30, 2023 at 11:46 AM Ian Lance Taylor wrote: > > On Thu, Nov 30, 2023 at 1:30 AM Rainer Orth > wrote: > > > > the gcc-autoregen bot correctly complained that the libgo and libstdc++ > > configure scripts hadn't been regenerated. I'd have commit

Re: Darwin: Replace environment runpath with embedded [PR88590]

2023-11-30 Thread Ian Lance Taylor
On Thu, Nov 30, 2023 at 11:58 AM Ian Lance Taylor wrote: > > On Thu, Nov 30, 2023 at 11:56 AM Iain Sandoe wrote: > > > > > On 30 Nov 2023, at 19:43, Ian Lance Taylor wrote: > > > > > > On Sun, Oct 22, 2023 at 2:18 PM FX Coudert wrote: > > &g

Re: [PATCH] libiberty: Fix build with GCC < 7

2023-12-05 Thread Ian Lance Taylor
On Tue, Dec 5, 2023 at 2:06 PM Jakub Jelinek wrote: > > Ok for trunk (both gcc and binutils)? > > 2023-12-05 Jakub Jelinek > > * configure.ac (HAVE_X86_SHA1_HW_SUPPORT): Verify __get_cpuid and > __get_cpuid_count are not implicitly declared. > * configure: Regenerated.

Re: [PATCH 2/4] libbacktrace: detect executable path on windows

2023-11-29 Thread Ian Lance Taylor
On Mon, Nov 20, 2023 at 11:57 AM Björn Schäpers wrote: > > this is what I'm using with GCC 12 and 13 on my windows machines, rebased onto > the current HEAD. Thanks. Committed as follows. Ian * fileline.c: Include if available. (windows_get_executable_path): New static

Re: [RFC 1/2] libbacktrace: add FDPIC support

2024-07-10 Thread Ian Lance Taylor
On Sun, May 26, 2024 at 11:51 PM Max Filippov wrote: > > diff --git a/libbacktrace/internal.h b/libbacktrace/internal.h > index 4fa0af8cb6c9..456911166026 100644 > --- a/libbacktrace/internal.h > +++ b/libbacktrace/internal.h > @@ -323,10 +323,22 @@ struct dwarf_sections > > struct dwarf_data; >

libbacktrace patch committed: Remove trailing whitespace

2024-07-11 Thread Ian Lance Taylor
This minor libbacktrace patch removes trailing whitespace. Ran libbacktrace tests. Committed to mainline. Ian * dwarf.c: Remove trailing whitespace. * macho.c: Likewise. 3f660179d6a0ebcd83d6a546f48a163d1a685f72 diff --git a/libbacktrace/dwarf.c b/libbacktrace/dwarf.c index ed067

libbacktrace patch committed: Suggest -g if no debug info

2024-07-11 Thread Ian Lance Taylor
This small libbacktrace patch suggests compiling with -g (and, on macOS, running dsymutil), if there is no debug info. Ran libbacktrace testsuite. Committed to mainline. Ian * elf.c (elf_nodebug): Suggest -g. * macho.c (macho_nodebug): Suggest -g and dsymutil.

libbacktrace patch committed: Add clang optnone attribute

2024-07-11 Thread Ian Lance Taylor
The libbacktrace testsuite was not passing when run with current versions of clang. Add the optnone attribute to make it pass. Add -Wno-attributes and -Wno-unknown-attributes to disable warnings about unrecognized function attributes. Bootstrapped and ran libbacktrace testsuite on x86_64-pc-linu

Re: libbacktrace patch committed: Add clang optnone attribute

2024-07-11 Thread Ian Lance Taylor
On Thu, Jul 11, 2024 at 4:18 PM Andrew Pinski wrote: > > On Thu, Jul 11, 2024 at 4:14 PM Ian Lance Taylor wrote: > > > > The libbacktrace testsuite was not passing when run with current > > versions of clang. Add the optnone attribute to make it pass. Add > > -W

libbacktrace patch committed: Correctly gather Mach-O symbols

2024-07-11 Thread Ian Lance Taylor
The libbacktrace symbol table code was incorrectly discarding global Mach-O symbols. This patch fixes the problem. Tested on macOS on the compile farm, and also on x86_64-pc-linux-gnu. Committed to mainline. Ian For PR libbacktrace/97082 * macho.c (MACH_O_N_EXT): Don't

libbacktrace patch committed: Don't fail if symbol size is unknown

2024-07-11 Thread Ian Lance Taylor
Mach-O and PE/COFF don't record symbol sizes in the symbol table. Adjust the libbacktrace testsuite so that it doesn't fail if the symbol size is unknown, only if it is incorrect. Ran libbacktrace tests on macOS on the compile farm and on x86_64-pc-linux-gnu. Committed to mainline. Ian

libbacktrace patch committed: Avoid infinite recursion

2024-07-11 Thread Ian Lance Taylor
libbacktrace could get an infinite recursion in an odd case in which a .gnu_debugdata section was added to a debug file, and mini_debuginfo was put into the debug file, and the debug file was put into a /usr/lib/debug directory to be found by build ID. This combination doesn't really make sense bu

Re: [RFC 1/2] libbacktrace: add FDPIC support

2024-07-15 Thread Ian Lance Taylor
On Sat, Jul 13, 2024 at 7:52 PM Max Filippov wrote: > > On Wed, Jul 10, 2024 at 12:49 PM Ian Lance Taylor wrote: > > On Sun, May 26, 2024 at 11:51 PM Max Filippov wrote: > > > diff --git a/libbacktrace/internal.h b/libbacktrace/internal.h > > > index 4fa

Re: [RFC 1/2] libbacktrace: add FDPIC support

2024-07-15 Thread Ian Lance Taylor
Can you see whether this patch works for FDPIC support? This is based on your patch but has various changes. Thanks. Ian diff --git a/libbacktrace/dwarf.c b/libbacktrace/dwarf.c index cc36a0a2990..96ffc4cc481 100644 --- a/libbacktrace/dwarf.c +++ b/libbacktrace/dwarf.c @@ -388,8 +388,8 @@ struct

Re: [RFC 1/2] libbacktrace: add FDPIC support

2024-07-15 Thread Ian Lance Taylor
On Mon, Jul 15, 2024 at 3:17 PM Max Filippov wrote: > > On Mon, Jul 15, 2024 at 10:21:18AM -0700, Ian Lance Taylor wrote: > > Can you see whether this patch works for FDPIC support? This is based > > on your patch but has various changes. Thanks. > > Yes, it is work

Re: [RFC 1/2] libbacktrace: add FDPIC support

2024-07-16 Thread Ian Lance Taylor
On Tue, Jul 16, 2024 at 5:41 PM David Edelsohn wrote: > > I believe that this patch broke bootstrap on AIX: > > /nasfarm/edelsohn/src/src/libbacktrace/xcoff.c: In function 'xcoff_add': > /nasfarm/edelsohn/src/src/libbacktrace/xcoff.c:1309:40: error: incompatible > type for argument 2 of 'backtrac

libbacktrace patch committed: Mention dl_iterate_phdr in README

2024-07-17 Thread Ian Lance Taylor
This patch adds some notes about dl_iterate_phdr to the libbacktrace README file. In general dl_iterate_phdr is not async-signal-safe and does call malloc, so programs that want to use libbacktrace functions from a signal handler or within malloc must make an initiali libbacktrace call in order to

libbacktrace patch committed: Better backtrace_print if no debug info

2024-07-17 Thread Ian Lance Taylor
This libbacktrace patch improves backtrace_print when there is no debug info. It falls back to calling backtrace_syminfo, and uses that to print an offset from a symbol if it can. This is a partial fix for https://github.com/ianlancetaylor/libbacktrace/issues/59. Bootstrapped and ran libbacktrace

Re: libbacktrace patch committed: Better backtrace_print if no debug info

2024-07-17 Thread Ian Lance Taylor
On Wed, Jul 17, 2024 at 5:40 PM Ian Lance Taylor wrote: > > This libbacktrace patch improves backtrace_print when there is no > debug info. It falls back to calling backtrace_syminfo, and uses that > to print an offset from a symbol if it can. This is a partial fix for > htt

libbacktrace patch committed: Use __has_attribute for fallthrough

2024-07-18 Thread Ian Lance Taylor
This libbacktrace patch uses __has_attribute for fallthrough. It also fixes some FALLTHROUGH comments to use ATTRIBUTE_FALLTHROUGH. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline. Ian * internal.h: Use __has_attribute to check for fallthrough attribute. * elf.c

Re: [C PATCH]: allow aliasing of compatible types derived from enumeral types [PR115157]

2024-05-23 Thread Ian Lance Taylor
On Thu, May 23, 2024 at 2:00 PM Joseph Myers wrote: > > On Tue, 21 May 2024, Martin Uecker wrote: > > > > C: allow aliasing of compatible types derived from enumeral types > > [PR115157] > > > > Aliasing of enumeral types with the underlying integer is now allowed > > by setting the a

Re: [C PATCH]: allow aliasing of compatible types derived from enumeral types [PR115157]

2024-05-23 Thread Ian Lance Taylor
On Thu, May 23, 2024 at 2:48 PM Martin Uecker wrote: > > Am Donnerstag, dem 23.05.2024 um 14:30 -0700 schrieb Ian Lance Taylor: > > On Thu, May 23, 2024 at 2:00 PM Joseph Myers wrote: > > > > > > On Tue, 21 May 2024, Martin Uecker wrote: > > > > > &g

Re: [C PATCH, v2]: allow aliasing of compatible types derived from enumeral types [PR115157]

2024-05-30 Thread Ian Lance Taylor
On Thu, May 30, 2024 at 12:48 AM Martin Uecker wrote: > > > Hi Ian, > > can you give me a green light for the go changes. The C FE > changes were approved. > > The only change with respect to the last version are > the removal of the unneeded null check for the > main variant (as discussed) and th

Re: [PATCH] testsuite: go: Require split-stack support for go.test/test/index0.go [PR87589]

2024-06-06 Thread Ian Lance Taylor
On Thu, Jun 6, 2024 at 7:00 AM Rainer Orth wrote: > > The index0-out.go test FAILs on Solaris (SPARC and x86, 32 and 64-bit), > as well as several others: > > FAIL: ./index0-out.go execution, -O0 -g -fno-var-tracking-assignments > > The test SEGVs because it tries a stack acess way beyond the st

Re: [PATCH] go: Fix gccgo -v on Solaris with ld

2024-06-06 Thread Ian Lance Taylor
On Thu, Jun 6, 2024 at 7:13 AM Rainer Orth wrote: > > The Go testsuite's go.sum file ends in > > Couldn't determine version of > /var/gcc/regression/master/11.4-gcc-64/build/gcc/gccgo > > on Solaris. It turns out this happens because gccgo -v is confused: > > [...] > gcc version 15.0.0 20240531

Re: [PATCH 04/52] go: Replace uses of {FLOAT, {, LONG_}DOUBLE}_TYPE_SIZE

2024-06-12 Thread Ian Lance Taylor
"Kewen.Lin" writes: > Hi, > > Gentle ping: > > https://gcc.gnu.org/pipermail/gcc-patches/2024-June/653387.html > > BR, > Kewen > > on 2024/6/3 11:00, Kewen Lin wrote: >> Joseph pointed out "floating types should have their mode, >> not a poorly defined precision value" in the discussion[1], >> as

libbacktrace patch committed: OK if zero backward bits

2024-06-16 Thread Ian Lance Taylor
I've committed this libbacktrace patch to not fail on the case where there are no bits available when looking backward. This can happen at the very end of the frame if no bits are actually required. The test case is long and may be proprietary, so not including it. Bootstrapped and ran libbacktra

Re: [PATCH 6/4] libbacktrace: Add loaded dlls after initialize

2024-07-29 Thread Ian Lance Taylor
On Fri, Mar 15, 2024 at 1:41 PM Björn Schäpers wrote: > > Am 10.01.2024 um 13:34 schrieb Eli Zaretskii: > >> Date: Tue, 9 Jan 2024 21:02:44 +0100 > >> Cc: i...@google.com, gcc-patches@gcc.gnu.org, g...@gcc.gnu.org > >> From: Björn Schäpers > >> > >> Am 07.01.2024 um 18:03 schrieb Eli Zaretskii: >

Re: [PATCH 6/4] libbacktrace: Add loaded dlls after initialize

2024-07-30 Thread Ian Lance Taylor
On Mon, Jul 29, 2024 at 12:41 PM Björn Schäpers wrote: > > > Instead of deleting those, move them inside the parentheses: > > > > typedef VOID (CALLBACK *LDR_DLL_NOTIFICATION)(ULONG, > > struct dll_notification_data*, > >

Go patch committed: Panic arguments have empty interface type

2024-08-05 Thread Ian Lance Taylor
This patch to the Go frontend determines that panic arguments are empty interfaces. After https://go.dev/cl//536643 passing NULL as the expected type permitted an untyped constant expression to remain untyped. This change will fix them to take on the empty interface type. The panic and print/prin

libbacktrace patch committed: Avoid -Wpointer-arith errors

2024-08-05 Thread Ian Lance Taylor
This patch, based on one by Kirill Müller, adds -Wpointer-arith to the libbacktrace warning options, and adds casts to avoid the cases where the warning currently fires. Bootstrapped and ran libbacktrace testsuite on x86_64-pc-linux-gnu. Committed to mainline. Ian * configure.ac (ACX_PROG_CC_WA

Go patch committed: Don't assume that ATTRIBUTE_UNUSED is defined

2024-08-07 Thread Ian Lance Taylor
This patch to the Go frontend avoids assuming that ATTRIBUTE_UNUSED is defined. While it is defined when building the Go frontend as part of GCC, it is meant to work with other compilers as well. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline. Ian e89ddb749517ea

Re: [PATCH] gotools: Workaround non-reproduceability of automake

2024-04-15 Thread Ian Lance Taylor
On Mon, Apr 15, 2024 at 5:42 AM Jakub Jelinek wrote: > > 2024-04-15 Jakub Jelinek > > * Makefile.am (install-exec-local, uninstall-local): Add goals > on the else branch of if NATIVE to ensure reproducibility. > * Makefile.in: Regenerate. This is OK. Go ahead and commi

Re: [PATCH] libbacktrace: Avoid GNU ld --compress-debug-sections=zlib-gabi

2024-04-23 Thread Ian Lance Taylor
On Tue, Apr 23, 2024 at 7:24 AM Jakub Jelinek wrote: > > What we could do is drop the HAVE_COMPRESSED_DEBUG stuff altogether, and > instead similarly how we have HAVE_COMPRESSED_DEBUG_ZSTD have > HAVE_COMPRESSED_DEBUG_{ZLIB,ZLIB_GABI,ZLIB_GNU} and for each of those > if linker supports them test w

Re: [PATCH 5/4] libbacktrace: improve getting debug information for loaded dlls

2024-04-28 Thread Ian Lance Taylor
On Thu, Apr 25, 2024 at 1:15 PM Björn Schäpers wrote: > > > Attached is the combined version of the two patches, only implementing the > > variant with the tlhelp32 API. > > > > Tested on x86 and x86_64 windows. > > > > Kind regards, > > Björn. > > A friendly ping. Thanks. Committed as follows.

libgo patch committed: Use in runtime/runtime.h

2024-04-29 Thread Ian Lance Taylor
This libgo patch changes runtime/runtime.h to use the C99 header file rather than defining a bool type and true/false constants itself. C99 was a long time ago and in case this file is always compiled by the newly built GCC. This should fix GCC PR 114875. Bootstrapped on x86_64-pc-linux-gnu. Co

libgo patch commited: Dump register on Solaris

2024-04-29 Thread Ian Lance Taylor
This libgo patch, by Rainer Orth, dumps register values on Solaris on a crash. This fixes GC PR 106813. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline. Ian a05efc8bf5ed329ea7d9b1740c326bdc6b04e37a diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE in

Re: [COMMITTED] Reduce startup costs for Value_Range.

2024-05-01 Thread Ian Lance Taylor
On Wed, May 1, 2024 at 12:43 AM Aldy Hernandez wrote: > > gcc/ChangeLog: > > * ipa-fnsummary.cc (evaluate_properties_for_edge): Initialize > Value_Range's. > * value-range.h (class Value_Range): Add a buffer and remove > m_irange and m_frange. > (Value_Range::Value

Re: [COMMITTED] Reduce startup costs for Value_Range.

2024-05-02 Thread Ian Lance Taylor
On Wed, May 1, 2024 at 7:50 PM Andrew Pinski wrote: > > On Wed, May 1, 2024 at 7:40 PM Ian Lance Taylor wrote: > > > > On Wed, May 1, 2024 at 12:43 AM Aldy Hernandez wrote: > > > > > > gcc/ChangeLog: > > > > > > * ipa-f

Re: [COMMITTED] Remove obsolete Solaris 11.3 support

2024-05-02 Thread Ian Lance Taylor
On Thu, May 2, 2024 at 7:06 AM Rainer Orth wrote: > > * libgo configure.ac and Makefile.am can now expect HAVE_STAT_TIMESPEC > to be true and libgo_cv_lib_setcontext_clobbers_tls doesn't apply any > longer. Any change would have to go upstream first and I don't know > about Ian's policy fo

Re: [PATCH 5/4] libbacktrace: improve getting debug information for loaded dlls

2024-05-03 Thread Ian Lance Taylor
On Thu, May 2, 2024 at 12:23 PM Björn Schäpers wrote: > > Am 28.04.2024 um 20:16 schrieb Ian Lance Taylor: > > > > Which of your other patches are still relevant? Thanks. > > > only this one. Thanks. Committed. Ian

Re: [go-nuts] Re: libtool update for powerpc64le-linux

2013-08-22 Thread Ian Lance Taylor
On Thu, Aug 22, 2013 at 5:35 PM, Alan Modra wrote: > On Fri, Aug 16, 2013 at 06:18:05PM +0930, Alan Modra wrote: >> I'd like to apply the following patch to the gcc repository (well, >> excluding the libgo part which I'm hoping someone will apply for me to >> the master go repository). I know the

Go patch commited: Don't export embedded builtins

2013-08-23 Thread Ian Lance Taylor
This patch from Chris Manghane fixes a bug in the type reflection information for a struct with an anonymous field of a builtin type. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline and 4.8 branch. Ian diff -r ea33e34cb12d go/types.cc --- a/go/types.cc Thu Aug

Re: [PATCH v3 12/18] convert the Go front end to automatic dependencies

2013-08-23 Thread Ian Lance Taylor
2013/8/20 Tom Tromey : > This converts Go. > > It renames gospec.o to go/gospec.o, for uniformity and so we can > remove an explicit rule. > > It defines go_OBJS, to conform to the documented Make-lang.in > conventions, and to ensure that Go objects are given the correct > order-only dependencies o

Go patch committed: Set TREE_PUBLIC reliably

2013-08-28 Thread Ian Lance Taylor
identified the problem: TREE_PUBLIC was set in the latter case but not the former. This patch fixes the problem. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline and 4.8 branch. Ian 2013-08-28 Ian Lance Taylor * go-gcc.cc (Gcc_backend::immutable_struct

Go patch committed: Rework closure value passing

2013-09-03 Thread Ian Lance Taylor
This patch changes the way that closure values are passed in the Go frontend. In June I changed the code to pass a closure value as the last argument to a function, which required adding descriptor wrapper functions for all top-level functions to accept and ignore that argument. This patch change

Go patch committed: Fix passing fn with multiple results to builtin

2013-09-03 Thread Ian Lance Taylor
This patch from Chris Manghane fixes passing a function that returns multiple results to a builtin function, as in append(F()) if F returns two values. That should work since append can take two arguments. This patch actually makes it work. Bootstrapped and ran Go testsuite on x86_64-unknown-lin

Re: [PATCH] More comments about DECL_BUILT_IN and DECL_IS_BUILTIN (was Re: Why DECL_BUILT_IN and DECL_IS_BUILTIN?)

2013-09-04 Thread Ian Lance Taylor
On Wed, Sep 4, 2013 at 1:46 AM, Dodji Seketeli wrote: > > +/* In a FUNCTION_DECL, nonzero means a built in function of a > + standard library or more generally a built in function that is > + recognized by optimizers and expanders. > + > + Note that it is different from the DECL_IS_BUILTIN a

Re: [PATCH, libgcc] Disable JCR section when java is not enabled

2013-09-11 Thread Ian Lance Taylor
On Tue, Sep 10, 2013 at 2:01 AM, Joey Ye wrote: > Updated to http://gcc.gnu.org/ml/gcc-patches/2012-12/msg01097.html > > Build passes on arm-none-eabi and bootstrap passes on x86. > > OK to trunk? > > ChangeLog > * libgcc/Makefile.in: Include JAVA_IS_ENABLED in CFLAGS. > * libgcc/confi

libgo patch committed: Fix reflect bug in method calls

2013-09-17 Thread Ian Lance Taylor
This patch to libgo fixes a bug when calling a method when the reflect.Value object holds a pointer to the actual value. The code was calling iword which tests v.kind, but for a method value that is always Func. This fixes the code to implement iword directly using v.typ.Kind(). Bootstrapped and

Merge from gcc 4.8 branch to gccgo branch

2013-09-17 Thread Ian Lance Taylor
I merged the GCC 4.8 brach to the gccgo branch. Ian

Re: [go-nuts] Solaris gccgo http.Get error?

2013-09-17 Thread Ian Lance Taylor
e is limited and I have to draw the line somewhere. Ian > On Friday, August 9, 2013 4:53:30 PM UTC-4, Ian Lance Taylor wrote: >> >> On Thu, Aug 8, 2013 at 11:22 PM, Jakob Borg wrote: >> > >> > But, adding a >> > >> > hints.ai_socktype = S

Go patch committed: Fix bug in type of shortcut operation

2013-09-18 Thread Ian Lance Taylor
When the Go frontend converts a shortcut operator like && or || to an if statement, it used the wrong type for the temporary variable. It always used bool, but the operator could be using a named version of bool. This matters when the type has methods. This patch fixes the problem. Bootstrapped a

Go patch committed: Fix identical unnamed structs with methods

2013-09-18 Thread Ian Lance Taylor
When gccgo saw multiple identical unnamed structs with methods assigned to interfaces that used those methods, it would emit multiple copies of the interface method table, causing a duplicate symbol error from the assembler. This patch fixes the bug. I added a test case to the master testsuite th

Re: [PATCH] manage dom-walk_data initialization and finalization with constructors and destructors

2013-09-18 Thread Ian Lance Taylor
On Wed, Sep 18, 2013 at 10:17 AM, Michael Matz wrote: > >> > I'd also like us to not use member privatization in our classes, but >> > that's not in the patch, but if we could agree on that it would be nice. > >> Member privatization is quite natural. What specifically do you not like >> about th

Go patch committed: Fix unexported method of embedded imported type

2013-09-18 Thread Ian Lance Taylor
The Go frontend was using the wrong name for an method generated for an embedded imported type with an unexported method. This is a kind of unlikely case, but it could lead to name collisions in the assembly code. I added a test case to the master Go repository, and it will come into the gccgo te

Re: Drop generic32 cost model

2013-09-19 Thread Ian Lance Taylor
On Wed, Sep 18, 2013 at 1:39 PM, Jan Hubicka wrote: > > when generic model was introduced, the 32bit only CPUs was still common on the > market. It would be stupid to tune 64bit code for CPUs that will never run > it. > We thus introduced two models - generic32 that was considering needs > of 32

Re: Drop generic32 cost model

2013-09-19 Thread Ian Lance Taylor
On Thu, Sep 19, 2013 at 8:38 AM, Jan Hubicka wrote: >> >> >> decide_alg is being called from ix86_expand_movmem, from >> expand_builtin_memcpy, for the call at line 61 of go-append.c. >> __builtin_memcpy (n, a.__values, a.__count * element_size); >> >> I'm continuing to look. > > Indeed it i

Go patch committed: Fix inconsistent check for == as memcmp

2013-09-19 Thread Ian Lance Taylor
The Go frontend was inconsistent in determining whether a struct could use memcmp for the == operator. This could cause one package to decide that it could use == and a package importing that one to determine that it could not. The effect was an undefined symbol at link time. This patch fixes th

Merge from 4.8 branch to gccgo branch

2013-09-19 Thread Ian Lance Taylor
I merged revision 202754 from the GCC 4.8 branch to the gccgo branch. Ian

Re: [PATCH] Amend attribute used documentation (PR other/58467)

2013-09-19 Thread Ian Lance Taylor
On Thu, Sep 19, 2013 at 7:36 AM, Marek Polacek wrote: > __attribute__((used)) is meant to be used only on VAR_DECLs that are > TREE_STATIC, but the documentation does not say that. Thus fixed. > > Ok? > > 2013-09-19 Marek Polacek > > PR other/58467 > * doc/extend.texi: Document

Re: Drop generic32 cost model

2013-09-20 Thread Ian Lance Taylor
On Fri, Sep 20, 2013 at 6:00 AM, Zamyatin, Igor wrote: > > For x86 32-bit is still important due to mobile market so we would like to > make some measurements first to see how this new generic model works on 32 > bits I would expect people compiling code for the mobile market to use an appropri

Go patch committed: Don't permit assigning nil to _

2013-09-24 Thread Ian Lance Taylor
This patch from Chris Manghane corrects the Go frontend to not permit assigning nil to the sink variable _. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline and 4.8 branch. Ian diff -r 869985e4ef63 go/parse.cc --- a/go/parse.cc Thu Sep 19 10:30:42 2013 -0700

libgo patch committed: Implement reflect.MakeFunc for amd64

2013-09-27 Thread Ian Lance Taylor
The Go standard library has an interesting function named reflect.MakeFunc. It takes a Go function F that accepts and returns a slice of reflect.Value, and a function type T, and returns a pointer to a function of type T that converts its arguments to reflect.Value, calls F, and converts the retur

libgo patch committed: Implement reflect.MakeFunc for 386

2013-09-27 Thread Ian Lance Taylor
Following up on my earlier patch, this patch implements the reflect.MakeFunc function for 386. Tom Tromey pointed out to me that the libffi closure support can probably be used for this. I was not aware of that support. It supports a lot more processors, and I should probably start using it. The

libgo patch committed: Copy stack values onto heap

2013-09-27 Thread Ian Lance Taylor
I realized that in the amd64 implementation of MakeFunc I forgot that it's not OK to just take the address of a value on the stack, since the function might hang onto the address. The value needs to be copied onto the heap first. This patch implements that. Bootstrapped and ran Go testsuite on x

Merge from GCC 4.8 branch to gccgo branch

2013-09-27 Thread Ian Lance Taylor
I've merged revision 202996 from the GCC 4.8 branch to the gccgo branch. Ian

Go patch committed: Avoid useless knockon errors for _

2013-09-28 Thread Ian Lance Taylor
This patch to the Go compiler avoids useless knockon errors for invalid uses of the blank identifier "_". I added a simple general facility for erroneous names although it is currently only used for _. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline and 4.8 b

Re: libgo patch committed: Implement reflect.MakeFunc for 386

2013-09-30 Thread Ian Lance Taylor
On Mon, Sep 30, 2013 at 6:07 AM, Rainer Orth wrote: > Ian Lance Taylor writes: > >> Following up on my earlier patch, this patch implements the >> reflect.MakeFunc function for 386. >> >> Tom Tromey pointed out to me that the libffi closure support can >> p

Re: libgo patch committed: Implement reflect.MakeFunc for 386

2013-09-30 Thread Ian Lance Taylor
On Mon, Sep 30, 2013 at 7:07 AM, Rainer Orth wrote: > Ian Lance Taylor writes: > >> On Mon, Sep 30, 2013 at 6:07 AM, Rainer Orth >> wrote: >>> Ian Lance Taylor writes: >>> >>>> Following up on my earlier patch, this patch implements the >&

Go patch committed: Use backend interface for variable expressions

2013-09-30 Thread Ian Lance Taylor
This patch from Chris Manghane changes the Go frontend to use the backend interface for variable expressions. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline and 4.8 branch. Ian 2013-09-30 Chris Manghane * go-gcc.cc (Backend::error_expression):

libgo patch committed: Fix reflect.Call passing function

2013-09-30 Thread Ian Lance Taylor
There was a bug in the libgo implementation of reflect.Call when passing a function following a non-pointer type. This patch fixes the bug and adds a test. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline and 4.8 branch. Ian diff -r 7c369498bb81 libgo/go/ref

libgo patch committed: Use libbacktrace

2012-09-28 Thread Ian Lance Taylor
x86_64-unknown-linux-gnu. Committed to mainline. Ian 2012-09-28 Ian Lance Taylor * Makefile.def: Make all-target-libgo depend on all-target-libbacktrace. * Makefile.in: Rebuild. diff -r 0126903cb089 libgo/Makefile.am --- a/libgo/Makefile.am Wed Sep 26 22:40:01 2012

Re: [patch] fix cross build on powerpc*-*-freebsd

2012-09-28 Thread Ian Lance Taylor
On Fri, Sep 28, 2012 at 4:30 AM, Andreas Tobler wrote: > > 2012-09-28 Andreas Tobler > > * config.gcc: Replace 'host' with 'target' when configuring for > powerpc64*-*-freebsd. Counts as obvious. OK in any case. Thanks. Ian

libgo patch committed: runtime.Caller should succeed without debug info

2012-09-28 Thread Ian Lance Taylor
Further testing uncovered a small bug in the change to use the libbacktrace library. The runtime.Caller function should succeed if we get the PC, even if we don't have any debug info. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline. Ian diff -r dff305030965

libgo patch committed: Better detection of memory overflow

2012-09-28 Thread Ian Lance Taylor
This patch, which brings in some bits of code from the master Go library, does a better job of detecting when a memory allocation request will overflow. This lets us panic in a way that the program can see, rather than crashing. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Comm

Go patch committed: Fix handling of omitted expression in switch

2012-09-28 Thread Ian Lance Taylor
In Go, if a switch statement omits the expression on which to switch, it is taken to be the constant "true". I was simply testing that the cases were boolean, which is not quite right, as it is valid to compare an empty interface against "true". This patch to the Go frontend fixes the problem. B

libbacktrace patch committed: Avoid multiple error messages

2012-09-29 Thread Ian Lance Taylor
libbacktrace testsuite on x86_64-unknown-linux-gnu. Committed to mainline. Ian 2012-09-29 Ian Lance Taylor PR other/54749 * fileline.c (fileline_initialize): Pass errnum as -1 when reporting that we could not read executable information after a previous

Re: RFC: LRA for x86/x86-64 [0/9]

2012-10-01 Thread Ian Lance Taylor
On Mon, Oct 1, 2012 at 10:51 AM, Vladimir Makarov wrote: > > When I proposed merge LRA to gcc4.8, I had in mind that: > o moving most changes from LRA branch will help LRA maintenance on the > branch and I'll have more time to work on other targets and problems. > o the earlier we start the tr

Re: [Patch contrib] check_GNU_style: remove tmp file

2012-10-01 Thread Ian Lance Taylor
On Mon, Sep 10, 2012 at 5:23 AM, Christophe Lyon wrote: > > Good point. Here is a new version, catching the same signals as warn_summary. This is OK. Thanks. (Minor note: it's easier if you the ChangeLog entry in the body of the message rather than the patch.) Ian

Re: PR 53889: Add __gthread_recursive_mutex_destroy

2012-10-01 Thread Ian Lance Taylor
On Sun, Sep 30, 2012 at 11:41 AM, Jonathan Wakely wrote: > There is no __gthread_recursive_mutex_destroy function in the gthreads API. > > Trying to use __gthread_mutex_destroy fails to compile on platforms > where the mutex > types are different. To avoid resource leaks libstdc++ needs to hack >

Re: [PATCH, libbacktrace]: Compile with -fasynchronous-unwind-tables

2012-10-01 Thread Ian Lance Taylor
On Mon, Oct 1, 2012 at 2:12 PM, Uros Bizjak wrote: > > Without -fasynchronous-unwind-tables, FDE is not generated for > backtrace_full and backtrace_simple wrappers. Without FDE, unwinding > terminates at these functions. I'm not opposed to -fasynchronous-unwind-tables, but now that you bring it

Re: PR 53889: Add __gthread_recursive_mutex_destroy

2012-10-01 Thread Ian Lance Taylor
On Mon, Oct 1, 2012 at 5:46 PM, Jonathan Wakely wrote: > > static inline int > __gthread_recursive_mutex_destroy (__gthread_recursive_mutex_t >* UNUSED(__mutex)) > { > return 0; > } > > Is that indentation right? (the asterisk is in the same column as the > p

Re: [PATCH v2, libbacktrace]: Compile with -funwind-tables

2012-10-02 Thread Ian Lance Taylor
On Tue, Oct 2, 2012 at 2:01 AM, Uros Bizjak wrote: > > 2012-10-02 Uros Bizjak > > PR other/54761 > * configure.ac (EXTRA_FLAGS): New. > * Makefile.am (AM_FLAGS): Add $(EXTRA_FLAGS). > * configure, Makefile.in: Regenerate. This is OK. Thanks. Ian

Re: [PATCH v2, libbacktrace]: Compile with -funwind-tables

2012-10-02 Thread Ian Lance Taylor
On Tue, Oct 2, 2012 at 8:22 AM, Uros Bizjak wrote: > > On a related issue, it looks to me that the compiler itself should be > compiled with -funwind-tables, otherwise there are no backtraces > generated, even if libbacktrace is linked in and operational. Again, > x86_64-linux-gnu host defaults to

Re: [PATCH v2, libbacktrace]: Compile with -funwind-tables

2012-10-02 Thread Ian Lance Taylor
On Tue, Oct 2, 2012 at 10:48 AM, Uros Bizjak wrote: > On Tue, Oct 2, 2012 at 7:44 PM, Gabriel Dos Reis > wrote: > > On a related issue, it looks to me that the compiler itself should be > compiled with -funwind-tables, otherwise there are no backtraces > generated, even if libbackt

Go patch committed: Update testsuite

2012-10-02 Thread Ian Lance Taylor
-09-29 Ian Lance Taylor * go.test/go-test.exp: Update for latest version of Go testsuite. Index: go-test.exp === --- go-test.exp (revision 191857) +++ go-test.exp (revision 191858) @@ -26,6 +26,8 @@ # D The directory of

<    1   2   3   4   5   6   7   8   9   10   >