aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/go/gofrontend/MERGE2
-rw-r--r--libgo/go/cmd/go/build.go6
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE
index 3490c56..f23457d 100644
--- a/gcc/go/gofrontend/MERGE
+++ b/gcc/go/gofrontend/MERGE
@@ -1,4 +1,4 @@
-152164a7249ecc5c2bfd4a091450dc7c2855f609
+9ff49c64ea6dbb5e08d1fa859b99b06049413279
The first line of this file holds the git revision number of the last
merge done from the gofrontend repository.
diff --git a/libgo/go/cmd/go/build.go b/libgo/go/cmd/go/build.go
index 9623b9c..a62bc86 100644
--- a/libgo/go/cmd/go/build.go
+++ b/libgo/go/cmd/go/build.go
@@ -3268,6 +3268,12 @@ func (b *builder) ccompilerCmd(envvar, defcmd, objdir string) []string {
a = append(a, "-fno-common")
}
+ // gccgo uses the language-independent exception mechanism to
+ // handle panics, so it always needs unwind tables.
+ if _, ok := buildToolchain.(gccgoToolchain); ok {
+ a = append(a, "-funwind-tables")
+ }
+
return a
}