Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit af68337d authored by Pirama Arumuga Nainar's avatar Pirama Arumuga Nainar
Browse files

Set -fsjlj-exceptions for all 32-bit Windows compiles

Bug: http://b/116784799

Previously this was set only when stl was requested.  We can now pass
this for all C++ compilations.

Test: go/android-llvm-windows-testing
Change-Id: I43e635ff50d0f1a5e000f13021506aeece368b4a
parent 74fe471e
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -49,7 +49,11 @@ var (

	windowsClangCppflags = []string{}

	windowsX86ClangCppflags = []string{}
	windowsX86ClangCppflags = []string{
		// Use SjLj exceptions for 32-bit.  libgcc_eh implements SjLj
		// exception model for 32-bit.
		"-fsjlj-exceptions",
	}

	windowsX8664ClangCppflags = []string{}

+0 −5
Original line number Diff line number Diff line
@@ -239,11 +239,6 @@ func (stl *stl) flags(ctx ModuleContext, flags Flags) Flags {
			flags.Local.CppFlags = append(flags.Local.CppFlags, "-nostdinc++")
			flags.extraLibFlags = append(flags.extraLibFlags, "-nostdlib++")
			if ctx.Windows() {
				// Use SjLj exceptions for 32-bit.  libgcc_eh implements SjLj
				// exception model for 32-bit.
				if ctx.Arch().ArchType == android.X86 {
					flags.Local.CppFlags = append(flags.Local.CppFlags, "-fsjlj-exceptions")
				}
				flags.Local.CppFlags = append(flags.Local.CppFlags,
					// Disable visiblity annotations since we're using static
					// libc++.