From 3d6a38d60154f09933c6c32cb09e1f2fa142812d Mon Sep 17 00:00:00 2001 From: Nikola Veljkovic Date: Mon, 22 Aug 2016 20:03:39 +0200 Subject: [PATCH] [mips] Disable compact branch generation Bug: http://b/31317834 Clang generates invalid beqc compact branch instruction. Disable compact branch generation until clang is updated to include r278824, which fixes the issue. Error: /tmp/backtrace_test-6a4a4f.s:6603: Error: invalid operands `beqc $zero,$1,$BB31_ 6' clang++.real: error: assembler command failed with exit code 1 (use -v to see in vocation) Test for mips and mips64: cd system/core/libbacktrace && mma Change-Id: I0b0f189e126621dbadb317ba711993e45004348d --- cc/config/mips64_device.go | 3 +++ cc/config/mips_device.go | 3 +++ 2 files changed, 6 insertions(+) diff --git a/cc/config/mips64_device.go b/cc/config/mips64_device.go index e414c7e18..4e8bf1e7d 100644 --- a/cc/config/mips64_device.go +++ b/cc/config/mips64_device.go @@ -78,6 +78,9 @@ var ( "mips64r6": []string{ "-mips64r6", "-msynci", + + // revert once clang picks up r278824 + "-mcompact-branches=never", }, } ) diff --git a/cc/config/mips_device.go b/cc/config/mips_device.go index e0ae3c78b..deef10f5e 100644 --- a/cc/config/mips_device.go +++ b/cc/config/mips_device.go @@ -114,6 +114,9 @@ var ( "-mfp64", "-mno-odd-spreg", "-msynci", + + // revert once clang picks up r278824 + "-mcompact-branches=never", }, } )