<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>151624</bug_id>
          
          <creation_ts>2015-11-26 06:15:03 -0800</creation_ts>
          <short_desc>Fix the B3 build with GCC 4.9.3</short_desc>
          <delta_ts>2016-01-29 01:47:32 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>153422</dependson>
          <blocked>152248</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Csaba Osztrogonác">ossy</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>msaboff</cc>
    
    <cc>ossy</cc>
    
    <cc>saam</cc>
    
    <cc>ysuzuki</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1144503</commentid>
    <comment_count>0</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-11-26 06:15:03 -0800</bug_when>
    <thetext>../../Source/JavaScriptCore/b3/air/AirIteratedRegisterCoalescing.cpp: In lambda function:
../../Source/JavaScriptCore/b3/air/AirIteratedRegisterCoalescing.cpp:154:13: internal compiler error: in gimplify_var_or_parm_decl, at gimplify.c:1741
             inst.forEachTmp([&amp;] (Tmp&amp; otherArg, Arg::Role role, Arg::Type otherArgType) {
             ^
Please submit a full bug report,
with preprocessed source if appropriate.
See &lt;file:///usr/share/doc/gcc-4.9/README.Bugs&gt; for instructions.
Preprocessed source stored into /tmp/ccVqyjJp.out file, please attach this to your bugreport.

It is a reported and fixed GCC bug - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62272
But unfortunately it is fixed only in GCC 5.2 and the bug is still valid in GCC 4.9.3.

Can we workaround this util we require at least GCC 5.2 version ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1144527</commentid>
    <comment_count>1</comment_count>
      <attachid>266188</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-11-26 09:10:12 -0800</bug_when>
    <thetext>Created attachment 266188
Patch

WIP workaround, don&apos;t use nested lambdas. Have you got a better idea or can we add a similar workaround?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1144528</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-11-26 09:11:21 -0800</bug_when>
    <thetext>Attachment 266188 did not pass style-queue:


ERROR: Source/JavaScriptCore/b3/air/AirIteratedRegisterCoalescing.cpp:153:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
Total errors found: 1 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1144530</commentid>
    <comment_count>3</comment_count>
      <attachid>266188</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-11-26 09:34:07 -0800</bug_when>
    <thetext>Comment on attachment 266188
Patch

I&apos;m strongly opposed to this fix. std::function requires extra heap allocation in many cases.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1144541</commentid>
    <comment_count>4</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-11-26 13:14:01 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Comment on attachment 266188 [details]
&gt; Patch
&gt; 
&gt; I&apos;m strongly opposed to this fix. std::function requires extra heap
&gt; allocation in many cases.

Could you suggest a better workaround?

If no, can we add workaround for only GCC older than 5.2.1?
Or should we wait some months, maybe a year to be able to
enable B3 on Linux when we can drop supporting older compilers.

Are you planning to maintain the llvm backend for a while
or will you remove it immediately once B3 is stable enough?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1144543</commentid>
    <comment_count>5</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-11-26 16:30:46 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #3)
&gt; &gt; Comment on attachment 266188 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; I&apos;m strongly opposed to this fix. std::function requires extra heap
&gt; &gt; allocation in many cases.
&gt; 
&gt; Could you suggest a better workaround?

You could use wtf/ScopedLambda instead of std::function, but I&apos;m not sure how that interacts with bind and so forth. 

&gt; 
&gt; If no, can we add workaround for only GCC older than 5.2.1?

That makes sense, though have you tried some finer grained work arounds?  Is it really the case that you can only work around the bug by using a function rather than just trying to use lambdas in a slightly different way?

&gt; Or should we wait some months, maybe a year to be able to
&gt; enable B3 on Linux when we can drop supporting older compilers.

We could do that, but...

&gt; 
&gt; Are you planning to maintain the llvm backend for a while
&gt; or will you remove it immediately once B3 is stable enough?

We will probably get rid of llvm soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1148167</commentid>
    <comment_count>6</comment_count>
      <attachid>267107</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-12-10 07:20:06 -0800</bug_when>
    <thetext>Created attachment 267107
Patch

updated the same workaround to ToT</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1148169</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-12-10 07:22:31 -0800</bug_when>
    <thetext>Attachment 267107 did not pass style-queue:


ERROR: Source/JavaScriptCore/b3/air/AirIteratedRegisterCoalescing.cpp:185:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
Total errors found: 1 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1148170</commentid>
    <comment_count>8</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-12-10 07:23:24 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; You could use wtf/ScopedLambda instead of std::function, but I&apos;m not sure
&gt; how that interacts with bind and so forth. 

Thanks, I&apos;ll check if we can use it. Or we might not enable B3
until we require the compiler which can complile it properly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1148218</commentid>
    <comment_count>9</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-12-10 09:20:13 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #5)
&gt; &gt; You could use wtf/ScopedLambda instead of std::function, but I&apos;m not sure
&gt; &gt; how that interacts with bind and so forth. 
&gt; 
&gt; Thanks, I&apos;ll check if we can use it. Or we might not enable B3
&gt; until we require the compiler which can complile it properly.

Note that when we enable B3, we will rip out LLVM and start deleting any code guarded by !FTL_USES_B3 until we no longer have the FTL_USES_B3 variable.

It might be worth figuring out what a good workaround would look like.  We use many lambdas in WebKit and none of them hit this bug.  Do you know what, specifically, the bug is?  I&apos;d be happy with playing with performance-neutral restructurings of this code and I only oppose the use of std::function because I fear that it will really hurt performance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1153795</commentid>
    <comment_count>10</comment_count>
      <attachid>268537</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-01-08 03:56:32 -0800</bug_when>
    <thetext>Created attachment 268537
Patch

updated the same workaround to ToT</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1153796</commentid>
    <comment_count>11</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-01-08 04:18:59 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; Note that when we enable B3, we will rip out LLVM and start deleting any
&gt; code guarded by !FTL_USES_B3 until we no longer have the FTL_USES_B3
&gt; variable.

It isn&apos;t a blocker issue. If we won&apos;t be able to make B3-FTL build
and as stable as LLVM-FTL is now on Linux, we can simply disable
building FTL JIT until proper fix.
 
&gt; It might be worth figuring out what a good workaround would look like.  We
&gt; use many lambdas in WebKit and none of them hit this bug.  Do you know what,
&gt; specifically, the bug is?  I&apos;d be happy with playing with
&gt; performance-neutral restructurings of this code and I only oppose the use of
&gt; std::function because I fear that it will really hurt performance.

I don&apos;t know the logic of this code at all and I&apos;m not interested to try
to find a workaround any more, because Ubuntu 15.04 will reach its end of
life at the end of January, so we have to migrate to 15.10 soon which 
has newer GCC which doesn&apos;t have this issue. (Otherwise the issue can
be found in the description of this bug report if somebody is still
interested in workarounding it for older GCC.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1154365</commentid>
    <comment_count>12</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2016-01-11 07:23:13 -0800</bug_when>
    <thetext>A GCC dependency bump would jeopardize our ability to get distributors to release our updates and consequentially the security of our users. But we can conditionally enable FTL depending on the version of GCC is use. Distros with the latest GCC will get the latest and greatest, but it will cause no real problems for distros that don&apos;t have it.

This can be addressed easily when B3 is exposed to CMake.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1159864</commentid>
    <comment_count>13</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2016-01-28 13:48:38 -0800</bug_when>
    <thetext>Seeing https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62272, I noticed that we have very very easy (and no performance regression!!!) fix for this issue.
Just replacing `addEdge` in the nested lambda to `this-&gt;addEdge`.

Filip, how about this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1159892</commentid>
    <comment_count>14</comment_count>
      <attachid>270149</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2016-01-28 14:50:49 -0800</bug_when>
    <thetext>Created attachment 270149
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1159912</commentid>
    <comment_count>15</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2016-01-28 15:21:58 -0800</bug_when>
    <thetext>Committed r195788: &lt;http://trac.webkit.org/changeset/195788&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1160064</commentid>
    <comment_count>16</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-01-29 01:47:32 -0800</bug_when>
    <thetext>(In reply to comment #13)
&gt; Seeing https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62272, I noticed that we
&gt; have very very easy (and no performance regression!!!) fix for this issue.
&gt; Just replacing `addEdge` in the nested lambda to `this-&gt;addEdge`.

Yay, we should have read this bug report in details. :) Thanks for the fix.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>266188</attachid>
            <date>2015-11-26 09:10:12 -0800</date>
            <delta_ts>2015-12-10 07:20:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-151624-20151126180954.patch</filename>
            <type>text/plain</type>
            <size>2460</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkyNzcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA2
NDRkNzZiNzBkZjdhNGIyN2Q0YmI4OTVhYTg1ZTM5NWE5MWE3MDNlLi5lYTgzZWVmMThmYTliNzE2
Njg4YzVlN2YyZTUyOWU2ZTkxZTAzYjg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMyBAQAorMjAxNS0xMS0yNiAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQu
b3JnPgorCisgICAgICAgIEZpeCB0aGUgQjMgYnVpbGQgd2l0aCBHQ0MKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MTYyNAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogYjMvYWlyL0Fpckl0ZXJhdGVkUmVn
aXN0ZXJDb2FsZXNjaW5nLmNwcDoKKyAgICAgICAgKEpTQzo6QjM6OkFpcjo6SXRlcmF0ZWRSZWdp
c3RlckNvYWxlc2NpbmdBbGxvY2F0b3I6OmJ1aWxkKToKKwogMjAxNS0xMS0yNCAgQ2FpdGxpbiBQ
b3R0ZXIgIDxjYWl0cEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtKU0NdIHN1cHBvcnQgQ29tcHV0
ZWQgUHJvcGVydHkgTmFtZXMgaW4gZGVzdHJ1Y3R1cmluZyBQYXR0ZXJucwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJJdGVyYXRlZFJlZ2lzdGVyQ29hbGVzY2lu
Zy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0Fpckl0ZXJhdGVkUmVnaXN0ZXJD
b2FsZXNjaW5nLmNwcAppbmRleCA4ZWY4ZDE3NWE5MGI4NjYyNWE1ZmY1OWRhMTRlN2MyZTFhNzI4
MWY2Li41YjNjYTY0Y2VkOTg2Y2FiNGZhOWU1ZGQxYjFlMjRmYjNkNGY4ZmE1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0Fpckl0ZXJhdGVkUmVnaXN0ZXJDb2FsZXNj
aW5nLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0Fpckl0ZXJhdGVkUmVn
aXN0ZXJDb2FsZXNjaW5nLmNwcApAQCAtMzcsNiArMzcsOCBAQAogI2luY2x1ZGUgPHd0Zi9MaXN0
RHVtcC5oPgogI2luY2x1ZGUgPHd0Zi9MaXN0SGFzaFNldC5oPgogCit1c2luZyBuYW1lc3BhY2Ug
c3RkOjpwbGFjZWhvbGRlcnM7CisKIG5hbWVzcGFjZSBKU0MgeyBuYW1lc3BhY2UgQjMgeyBuYW1l
c3BhY2UgQWlyIHsKIAogc3RhdGljIGJvb2wgZGVidWcgPSBmYWxzZTsKQEAgLTE0NywxNyArMTQ5
LDIxIEBAIHB1YmxpYzoKIAogICAgIHZvaWQgYnVpbGQoSW5zdCYgaW5zdCwgY29uc3QgTGl2ZW5l
c3M8VG1wPjo6TG9jYWxDYWxjJiBsb2NhbENhbGMpCiAgICAgeworCisgICAgICAgIGF1dG8gZm9v
ID0gWyZdIChUbXAmIGFyZywgVG1wJiBvdGhlckFyZywgQXJnOjpSb2xlIHJvbGUsIEFyZzo6VHlw
ZSBvdGhlckFyZ1R5cGUpIHsKKyAgICAgICAgICAgIGlmIChvdGhlckFyZ1R5cGUgIT0gdHlwZSkK
KyAgICAgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgICAgIGlmIChBcmc6OmlzRGVmKHJv
bGUpKQorICAgICAgICAgICAgICAgIGFkZEVkZ2UoYXJnLCBvdGhlckFyZyk7CisgICAgICAgIH07
CisKICAgICAgICAgaW5zdC5mb3JFYWNoRGVmQW5kRXh0cmFDbG9iYmVyZWRUbXAodHlwZSwgWyZd
IChUbXAmIGFyZykgewogICAgICAgICAgICAgLy8gQWxsIHRoZSBEZWYoKXMgaW50ZXJmZXJlIHdp
dGggZWFjaCBvdGhlciBhbmQgd2l0aCBhbGwgdGhlIGV4dHJhIGNsb2JiZXJlZCBUbXBzLgogICAg
ICAgICAgICAgLy8gV2Ugc2hvdWxkIG5vdCB1c2UgZm9yRWFjaERlZkFuZEV4dHJhQ2xvYmJlcmVk
VG1wKCkgaGVyZSBzaW5jZSBjb2xvcmVkIFRtcHMKICAgICAgICAgICAgIC8vIGRvIG5vdCBuZWVk
IGludGVyZmVyZW5jZSBlZGdlcyBpbiBvdXIgaW1wbGVtZW50YXRpb24uCi0gICAgICAgICAgICBp
bnN0LmZvckVhY2hUbXAoWyZdIChUbXAmIG90aGVyQXJnLCBBcmc6OlJvbGUgcm9sZSwgQXJnOjpU
eXBlIG90aGVyQXJnVHlwZSkgewotICAgICAgICAgICAgICAgIGlmIChvdGhlckFyZ1R5cGUgIT0g
dHlwZSkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwotCi0gICAgICAgICAgICAgICAgaWYg
KEFyZzo6aXNEZWYocm9sZSkpCi0gICAgICAgICAgICAgICAgICAgIGFkZEVkZ2UoYXJnLCBvdGhl
ckFyZyk7Ci0gICAgICAgICAgICB9KTsKKyAgICAgICAgICAgIHN0ZDo6ZnVuY3Rpb248dm9pZChU
bXAmLCBBcmc6OlJvbGUsIEFyZzo6VHlwZSk+IGZvbzIgPSBzdGQ6OmJpbmQoZm9vLCBhcmcsIF8x
LCBfMiwgXzMpOworICAgICAgICAgICAgaW5zdC5mb3JFYWNoVG1wKGZvbzIpOwogICAgICAgICB9
KTsKIAogICAgICAgICBpZiAoTW92ZUluc3RIZWxwZXI8dHlwZT46Om1heUJlQ29hbGVzY2FibGUo
aW5zdCkpIHsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>267107</attachid>
            <date>2015-12-10 07:20:06 -0800</date>
            <delta_ts>2016-01-08 03:56:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-151624-20151210161934.patch</filename>
            <type>text/plain</type>
            <size>2665</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkzOTAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA5
OTc1NGFlMmYzM2I4OTQ4ODE0ZTZiNDk0MjZiM2JiYzZlYzI5MTYxLi5hMTY5YjQ1NWM4YTk2NmUw
NjgwNzBiNjEwNzg2ZjE1ZDg1NzQ0MTIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
NSArMSwxNiBAQAogMjAxNS0xMi0xMCAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQu
b3JnPgogCisgICAgICAgIEZpeCB0aGUgQjMgYnVpbGQgd2l0aCBHQ0MgNC45LjMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MTYyNAorCisgICAgICAg
IE9PUFMhIC0gd29ya2Fyb3VuZCwgbm90IGZvciByZXZpZXcgYW5kIGxhbmRpbmcgLSBPT1BTIQor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogYjMvYWly
L0Fpckl0ZXJhdGVkUmVnaXN0ZXJDb2FsZXNjaW5nLmNwcDoKKworMjAxNS0xMi0xMCAgQ3NhYmEg
T3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQub3JnPgorCiAgICAgICAgIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9jcmVhdGVfaGFzaF90YWJsZSBzaG91bGRuJ3QgYmUgdG9vIHZlcmJvc2UKICAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MTg2MQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0Fpckl0ZXJhdGVkUmVnaXN0ZXJD
b2FsZXNjaW5nLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlySXRlcmF0ZWRS
ZWdpc3RlckNvYWxlc2NpbmcuY3BwCmluZGV4IDUwMmM4OWRmNmQwN2Y5NzFkZjdjZmJhYWRmZWQ3
MDI1ZjdhOTZkOWYuLjNkZTJjYmFjMGU2Yzc3M2MzNTlmYzM4ZWQxMTRlZDg2YzhiMDkzZWIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlySXRlcmF0ZWRSZWdpc3Rl
ckNvYWxlc2NpbmcuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlySXRl
cmF0ZWRSZWdpc3RlckNvYWxlc2NpbmcuY3BwCkBAIC0zOSw2ICszOSw4IEBACiAjaW5jbHVkZSA8
d3RmL0xpc3REdW1wLmg+CiAjaW5jbHVkZSA8d3RmL0xpc3RIYXNoU2V0Lmg+CiAKK3VzaW5nIG5h
bWVzcGFjZSBzdGQ6OnBsYWNlaG9sZGVyczsKKwogbmFtZXNwYWNlIEpTQyB7IG5hbWVzcGFjZSBC
MyB7IG5hbWVzcGFjZSBBaXIgewogCiBuYW1lc3BhY2UgewpAQCAtMTc5LDYgKzE4MSwxMyBAQCBw
cml2YXRlOgogCiAgICAgdm9pZCBidWlsZChJbnN0JiBpbnN0LCBJbnN0KiBuZXh0SW5zdCwgY29u
c3QgdHlwZW5hbWUgVG1wTGl2ZW5lc3M8dHlwZT46OkxvY2FsQ2FsYyYgbG9jYWxDYWxjKQogICAg
IHsKKworICAgICAgICBhdXRvIGZvbyA9IFsmXSAoVG1wJiBhcmcsIFRtcCYgb3RoZXJBcmcsIEFy
Zzo6Um9sZSByb2xlLCBBcmc6OlR5cGUgYXJnVHlwZSkgeworICAgICAgICAgICAgaWYgKCFBcmc6
OmlzRGVmKHJvbGUpIHx8IGFyZ1R5cGUgIT0gdHlwZSkKKyAgICAgICAgICAgICAgICByZXR1cm47
CisgICAgICAgICAgICBhZGRFZGdlKGFyZywgb3RoZXJBcmcpOworICAgICAgICB9OworCiAgICAg
ICAgIGluc3QuZm9yRWFjaFRtcFdpdGhFeHRyYUNsb2JiZXJlZFJlZ3MoCiAgICAgICAgICAgICBu
ZXh0SW5zdCwKICAgICAgICAgICAgIFsmXSAoY29uc3QgVG1wJiBhcmcsIEFyZzo6Um9sZSByb2xl
LCBBcmc6OlR5cGUgYXJnVHlwZSkgewpAQCAtMTg4LDEyICsxOTcsOCBAQCBwcml2YXRlOgogICAg
ICAgICAgICAgICAgIC8vIEFsbCB0aGUgRGVmKClzIGludGVyZmVyZSB3aXRoIGVhY2ggb3RoZXIg
YW5kIHdpdGggYWxsIHRoZSBleHRyYSBjbG9iYmVyZWQgVG1wcy4KICAgICAgICAgICAgICAgICAv
LyBXZSBzaG91bGQgbm90IHVzZSBmb3JFYWNoRGVmQW5kRXh0cmFDbG9iYmVyZWRUbXAoKSBoZXJl
IHNpbmNlIGNvbG9yZWQgVG1wcwogICAgICAgICAgICAgICAgIC8vIGRvIG5vdCBuZWVkIGludGVy
ZmVyZW5jZSBlZGdlcyBpbiBvdXIgaW1wbGVtZW50YXRpb24uCi0gICAgICAgICAgICAgICAgaW5z
dC5mb3JFYWNoVG1wKFsmXSAoVG1wJiBvdGhlckFyZywgQXJnOjpSb2xlIHJvbGUsIEFyZzo6VHlw
ZSBhcmdUeXBlKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIUFyZzo6aXNEZWYocm9s
ZSkgfHwgYXJnVHlwZSAhPSB0eXBlKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVy
bjsKLSAgICAgICAgICAgICAgICAgICAgICAgIAotICAgICAgICAgICAgICAgICAgICAgICAgYWRk
RWRnZShhcmcsIG90aGVyQXJnKTsKLSAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAg
ICAgICAgc3RkOjpmdW5jdGlvbjx2b2lkKFRtcCYsIEFyZzo6Um9sZSwgQXJnOjpUeXBlKT4gZm9v
MiA9IHN0ZDo6YmluZChmb28sIGFyZywgXzEsIF8yLCBfMyk7CisgICAgICAgICAgICAgICAgaW5z
dC5mb3JFYWNoVG1wKGZvbzIpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgaWYgKE1vdmVJ
bnN0SGVscGVyPHR5cGU+OjptYXlCZUNvYWxlc2NhYmxlKGluc3QpKSB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>268537</attachid>
            <date>2016-01-08 03:56:32 -0800</date>
            <delta_ts>2016-01-28 14:50:44 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-151624-20160108125600.patch</filename>
            <type>text/plain</type>
            <size>2679</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk0NzYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
MzgxZGI4MzRjNDE5MjJjMzY2MjU3OTgwNGZhNzJlNTgwMmVmYzg3Li5hNWM0NDQwMjQ5MTZhNTNl
MTBmMWRhNDJmZTNiMjI5ZjcwYzI0OWU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMiBAQAorMjAxNi0wMS0wOCAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQu
b3JnPgorCisgICAgICAgIEZpeCB0aGUgQjMgYnVpbGQgd2l0aCBHQ0MgNC45LjMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MTYyNAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogYjMvYWlyL0Fpckl0ZXJh
dGVkUmVnaXN0ZXJDb2FsZXNjaW5nLmNwcDoKKwogMjAxNi0wMS0wNyAgRmlsaXAgUGl6bG8gIDxm
cGl6bG9AYXBwbGUuY29tPgogCiAgICAgICAgIEZUTCBCMyBsYXp5IHNsb3cgcGF0aHMgc2hvdWxk
IGRvIGV4Y2VwdGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIv
QWlySXRlcmF0ZWRSZWdpc3RlckNvYWxlc2NpbmcuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2IzL2Fpci9BaXJJdGVyYXRlZFJlZ2lzdGVyQ29hbGVzY2luZy5jcHAKaW5kZXggNmEwZjA5ZTVj
NmNhMWEzNTAwMDFkZGU4OWI2MjkzYzM5ZjlmMzVmZi4uOTM1NjNjNjU3ZjdhNmVhNTVhZTIyYTdm
NTI2YjQzZjhhYzFiODEwYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fp
ci9BaXJJdGVyYXRlZFJlZ2lzdGVyQ29hbGVzY2luZy5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2IzL2Fpci9BaXJJdGVyYXRlZFJlZ2lzdGVyQ29hbGVzY2luZy5jcHAKQEAgLTQxLDYg
KzQxLDggQEAKICNpbmNsdWRlIDx3dGYvTGlzdER1bXAuaD4KICNpbmNsdWRlIDx3dGYvTGlzdEhh
c2hTZXQuaD4KIAordXNpbmcgbmFtZXNwYWNlIHN0ZDo6cGxhY2Vob2xkZXJzOworCiBuYW1lc3Bh
Y2UgSlNDIHsgbmFtZXNwYWNlIEIzIHsgbmFtZXNwYWNlIEFpciB7CiAKIG5hbWVzcGFjZSB7CkBA
IC03ODAsMjMgKzc4MiwyNCBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBidWlsZChJbnN0KiBwcmV2
SW5zdCwgSW5zdCogbmV4dEluc3QsIGNvbnN0IHR5cGVuYW1lIFRtcExpdmVuZXNzPHR5cGU+OjpM
b2NhbENhbGMmIGxvY2FsQ2FsYykKICAgICB7CisKKyAgICAgICAgYXV0byBmb28gPSBbJl0gKFRt
cCYgYXJnLCBUbXAmIG90aGVyQXJnLCBBcmc6OlJvbGUsIEFyZzo6VHlwZSBhcmdUeXBlLCBBcmc6
OldpZHRoKSB7CisgICAgICAgICAgICBpZiAoYXJnVHlwZSAhPSB0eXBlKQorICAgICAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgICAgIGFkZEVkZ2UoYXJnLCBvdGhlckFyZyk7CisgICAgICAg
IH07CisKICAgICAgICAgSW5zdDo6Zm9yRWFjaERlZldpdGhFeHRyYUNsb2JiZXJlZFJlZ3M8VG1w
PigKICAgICAgICAgICAgIHByZXZJbnN0LCBuZXh0SW5zdCwKICAgICAgICAgICAgIFsmXSAoY29u
c3QgVG1wJiBhcmcsIEFyZzo6Um9sZSwgQXJnOjpUeXBlIGFyZ1R5cGUsIEFyZzo6V2lkdGgpIHsK
ICAgICAgICAgICAgICAgICBpZiAoYXJnVHlwZSAhPSB0eXBlKQogICAgICAgICAgICAgICAgICAg
ICByZXR1cm47Ci0gICAgICAgICAgICAgICAgCisKICAgICAgICAgICAgICAgICAvLyBBbGwgdGhl
IERlZigpcyBpbnRlcmZlcmUgd2l0aCBlYWNoIG90aGVyIGFuZCB3aXRoIGFsbCB0aGUgZXh0cmEg
Y2xvYmJlcmVkIFRtcHMuCiAgICAgICAgICAgICAgICAgLy8gV2Ugc2hvdWxkIG5vdCB1c2UgZm9y
RWFjaERlZldpdGhFeHRyYUNsb2JiZXJlZFJlZ3MoKSBoZXJlIHNpbmNlIGNvbG9yZWQgVG1wcwog
ICAgICAgICAgICAgICAgIC8vIGRvIG5vdCBuZWVkIGludGVyZmVyZW5jZSBlZGdlcyBpbiBvdXIg
aW1wbGVtZW50YXRpb24uCi0gICAgICAgICAgICAgICAgSW5zdDo6Zm9yRWFjaERlZjxUbXA+KAot
ICAgICAgICAgICAgICAgICAgICBwcmV2SW5zdCwgbmV4dEluc3QsCi0gICAgICAgICAgICAgICAg
ICAgIFsmXSAoVG1wJiBvdGhlckFyZywgQXJnOjpSb2xlLCBBcmc6OlR5cGUgYXJnVHlwZSwgQXJn
OjpXaWR0aCkgewotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGFyZ1R5cGUgIT0gdHlwZSkK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICAgICAgICAg
ICAgICAKLSAgICAgICAgICAgICAgICAgICAgICAgIGFkZEVkZ2UoYXJnLCBvdGhlckFyZyk7Ci0g
ICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICAgIHN0ZDo6ZnVuY3Rpb248dm9p
ZChUbXAmLCBBcmc6OlJvbGUsIEFyZzo6VHlwZSwgQXJnOjpXaWR0aCk+IGZvbzIgPSBzdGQ6OmJp
bmQoZm9vLCBhcmcsIF8xLCBfMiwgXzMsIF80KTsKKyAgICAgICAgICAgICAgICBJbnN0Ojpmb3JF
YWNoRGVmPFRtcD4ocHJldkluc3QsIG5leHRJbnN0LCBmb28yKTsKICAgICAgICAgICAgIH0pOwog
CiAgICAgICAgIGlmIChwcmV2SW5zdCAmJiBtYXlCZUNvYWxlc2NhYmxlKCpwcmV2SW5zdCkpIHsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>270149</attachid>
            <date>2016-01-28 14:50:49 -0800</date>
            <delta_ts>2016-01-28 15:15:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-151624-20160129075023.patch</filename>
            <type>text/plain</type>
            <size>1653</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk1NzgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA5
MzRjNDJmZDk3NzFjNWE0YjM5NTg0MDNlYzMzY2Q5NWY5Nzc1NjIyLi44ZTIyMGFkM2VmNTc2ZWNm
OTAxMTlkNzE4NDhkNjlkMDAwOTBmMmMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAxNi0wMS0yOCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBGaXggdGhlIEIzIGJ1aWxkIHdpdGggR0NDIDQuOS4zCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTE2MjQKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBEdWUgdG8gR0NDIDQuOSdz
IGNvbXBpbGVyIGlzc3VlWzFdLCBtZXRob2QgY2FsbHMgaW5zaWRlICgyIG9yIHNvKSBuZXN0ZWQg
bGFtYmRhcyBuZWVkIHRvIHVzZSBgdGhpc2AgdG8gYXZvaWQgaW50ZXJuYWwgY29tcGlsZXIgZXJy
b3JzLgorICAgICAgICBbMV06IGh0dHBzOi8vZ2NjLmdudS5vcmcvYnVnemlsbGEvc2hvd19idWcu
Y2dpP2lkPTYyMjcyCisKKyAgICAgICAgKiBiMy9haXIvQWlySXRlcmF0ZWRSZWdpc3RlckNvYWxl
c2NpbmcuY3BwOgorCiAyMDE2LTAxLTI4ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+
CiAKICAgICAgICAgTG93ZXJUb0Fpcjo6cHJlZmVyUmlnaHRGb3JSZXN1bHQoKSBzaG91bGQgcmVz
b2x2ZSB1c2UgY291bnQgdGllcyBieSBzZWxlY3RpbmcgdGhlIGNoaWxkIHRoYXQgaXMgY2xvc2Vz
dCBpbiBhbiBpZG9tIHdhbGsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9h
aXIvQWlySXRlcmF0ZWRSZWdpc3RlckNvYWxlc2NpbmcuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2IzL2Fpci9BaXJJdGVyYXRlZFJlZ2lzdGVyQ29hbGVzY2luZy5jcHAKaW5kZXggMDJlZjc0
MTU1MjBlMGZjZmZhODQzOThkMjFmYzIzOGMwNzczNDQ1Yy4uOTk5NmI5OWU0YTcwZGVlNGIyNDUy
M2VhMGMxNGRmY2E4NDgwMjRiYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Iz
L2Fpci9BaXJJdGVyYXRlZFJlZ2lzdGVyQ29hbGVzY2luZy5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2IzL2Fpci9BaXJJdGVyYXRlZFJlZ2lzdGVyQ29hbGVzY2luZy5jcHAKQEAgLTgz
NCw3ICs4MzQsNyBAQCBjbGFzcyBDb2xvcmluZ0FsbG9jYXRvciA6IHB1YmxpYyBBYnN0cmFjdENv
bG9yaW5nQWxsb2NhdG9yPHVuc2lnbmVkPiB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAo
YXJnVHlwZSAhPSB0eXBlKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAg
ICAgICAgICAgICAgICAgICAgICAgIAotICAgICAgICAgICAgICAgICAgICAgICAgYWRkRWRnZShh
cmcsIG90aGVyQXJnKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMtPmFkZEVkZ2UoYXJn
LCBvdGhlckFyZyk7CiAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgfSk7CiAK
</data>
<flag name="review"
          id="295010"
          type_id="1"
          status="+"
          setter="fpizlo"
    />
          </attachment>
      

    </bug>

</bugzilla>