[GHC] #15068: Small number of test case failures on Ubuntu Bionic (GCC 7.3)
GHC
ghc-devs at haskell.org
Thu May 3 15:04:26 UTC 2018
#15068: Small number of test case failures on Ubuntu Bionic (GCC 7.3)
-------------------------------------+-------------------------------------
Reporter: jrp | Owner: (none)
Type: bug | Status: patch
Priority: highest | Milestone: 8.6.1
Component: Compiler | Version: 8.4.1
(CodeGen) |
Resolution: | Keywords:
Operating System: Linux | Architecture: x86_64
| (amd64)
Type of failure: Incorrect result | Test Case: T13658
at runtime | T14779a T14779b T14868 debug
| parsing001
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s): Phab:D4654
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by Ömer Sinan Ağacan <omeragacan@…>):
In [changeset:"358b508051333882d4099acca8f269e6fb2b7d65/ghc"
358b5080/ghc]:
{{{
#!CommitTicketReference repository="ghc"
revision="358b508051333882d4099acca8f269e6fb2b7d65"
Compute DW_FORM_block length correctly; also fixes #15068
Before this patch, the pprUnwindwExpr function computed the length of
by the following assembly fragment:
.uleb128 1f-.-1
<expression data>
1:
That is, to compute the length, it takes the difference of the label 1
and the address of the .uleb128 directive, and subtracts 1.
In #15068 it was reported that `as` from binutils 4.30 has trouble with
evaluating the `.` part of the expression. However, there is actually a
problem with the expression, if the length of the data ever becomes
larger than 128: In that case, the .uleb128 directive will emit more
than 1 byte, and the computed length will be wrong.
The present patch changes the assembly fragment to use two labels,
which fixes both these problems.
.uleb128 2f-1f
1:
<expression data>
2:
Test Plan: validate
Reviewers: bgamari, osa1
Reviewed By: bgamari
Subscribers: thomie, carter
GHC Trac Issues: #15068
Differential Revision: https://phabricator.haskell.org/D4654
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15068#comment:16>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list