diff options
author | aurel32 <aurel32@6ca36cf4-e1d1-0310-8c6f-e303bb2178ca> | 2014-06-11 12:33:30 +0000 |
---|---|---|
committer | aurel32 <aurel32@6ca36cf4-e1d1-0310-8c6f-e303bb2178ca> | 2014-06-11 12:33:30 +0000 |
commit | ba45951ccfda85cbe73d6fa9f18a70e1f65369af (patch) | |
tree | f51a77171b47d78dc6a1e0bb4d9bccb57dd244f1 | |
parent | 2102b37c1f64cf66df2973740a94c7d74b585a45 (diff) | |
download | gcc-48-ba45951ccfda85cbe73d6fa9f18a70e1f65369af.tar.gz |
* Fix PR c++/61336, taken from the trunk.
git-svn-id: svn://svn.debian.org/svn/gcccvs/branches/sid/gcc-4.8@7448 6ca36cf4-e1d1-0310-8c6f-e303bb2178ca
-rw-r--r-- | debian/changelog | 7 | ||||
-rw-r--r-- | debian/patches/pr61336.diff | 40 | ||||
-rw-r--r-- | debian/rules.patch | 1 |
3 files changed, 48 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog index d2a8da9..e1cb0c7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +gcc-4.8 (4.8.3-3) UNRELEASED; urgency=medium + + [ Aurelien Jarno ] + * Fix PR c++/61336, taken from the trunk. + + -- Matthias Klose <doko@debian.org> Sat, 07 Jun 2014 02:28:40 +0200 + gcc-4.8 (4.8.3-3) unstable; urgency=medium * Update to SVN 20140606 (r211339) from the gcc-4_8-branch. diff --git a/debian/patches/pr61336.diff b/debian/patches/pr61336.diff new file mode 100644 index 0000000..7e3e7ad --- /dev/null +++ b/debian/patches/pr61336.diff @@ -0,0 +1,40 @@ +# DP: Fix PR target/61336, taken from the trunk. + +2014-06-02 Richard Henderson <rth@redhat.com> + + PR target/61336 + * config/alpha/alpha.c (print_operand_address): Allow symbolic + addresses inside asms. Use output_operand_lossage instead of + gcc_unreachable. + +--- a/src/gcc/config/alpha/alpha.c ++++ b/src/gcc/config/alpha/alpha.c +@@ -5450,12 +5450,13 @@ + offset = INTVAL (addr); + break; + +-#if TARGET_ABI_OPEN_VMS + case SYMBOL_REF: ++ gcc_assert(TARGET_ABI_OPEN_VMS || this_is_asm_operands); + fprintf (file, "%s", XSTR (addr, 0)); + return; + + case CONST: ++ gcc_assert(TARGET_ABI_OPEN_VMS || this_is_asm_operands); + gcc_assert (GET_CODE (XEXP (addr, 0)) == PLUS + && GET_CODE (XEXP (XEXP (addr, 0), 0)) == SYMBOL_REF); + fprintf (file, "%s+" HOST_WIDE_INT_PRINT_DEC, +@@ -5462,10 +5463,10 @@ + XSTR (XEXP (XEXP (addr, 0), 0), 0), + INTVAL (XEXP (XEXP (addr, 0), 1))); + return; +- +-#endif ++ + default: +- gcc_unreachable (); ++ output_operand_lossage ("invalid operand address"); ++ return; + } + + fprintf (file, HOST_WIDE_INT_PRINT_DEC "($%d)", offset, basereg); diff --git a/debian/rules.patch b/debian/rules.patch index 7237c2b..b0dce31 100644 --- a/debian/rules.patch +++ b/debian/rules.patch @@ -97,6 +97,7 @@ debian_patches += \ pr57653 \ libitm-aarch64 \ pr61046 \ + pr61336 \ # FIXME: still necessary for cross building the native compiler? # gcc-auto-build \ |