<feed xmlns='http://www.w3.org/2005/Atom'>
<title>otp.git/lib/hipe/test/basic_SUITE_data, branch maint</title>
<subtitle>Mirror of Erlang/OTP repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/'/>
<entry>
<title>hipe: Document new limitations and disable known failing tests</title>
<updated>2018-09-28T09:40:12+00:00</updated>
<author>
<name>John Högberg</name>
<email>john@erlang.org</email>
</author>
<published>2018-09-24T06:03:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=afa36d2081927c46a4c3ddceb40276fc7756bb51'/>
<id>afa36d2081927c46a4c3ddceb40276fc7756bb51</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>No reason to refer to wxSizer in the test</title>
<updated>2018-06-12T09:26:00+00:00</updated>
<author>
<name>Kostis Sagonas</name>
<email>kostis@it.uu.se</email>
</author>
<published>2018-06-12T09:26:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=1d48b1114d195228c750fd0fcd98cb223c714479'/>
<id>1d48b1114d195228c750fd0fcd98cb223c714479</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix a crash ih HoPE's lazy code motion pass</title>
<updated>2018-06-11T15:47:37+00:00</updated>
<author>
<name>Kostis Sagonas</name>
<email>kostis@it.uu.se</email>
</author>
<published>2018-06-11T15:47:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=992a1f18934f071858b5e87f32bda5b49bed637d'/>
<id>992a1f18934f071858b5e87f32bda5b49bed637d</id>
<content type='text'>
Some change in the BEAM compiler resulted in the creation of basic
blocks that differed from those previously created by the compiler.
As a result, the lazy code motion pass of RTL crashed when compiling
some of the new code.

Crashes were privately reported by @richcarl.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Some change in the BEAM compiler resulted in the creation of basic
blocks that differed from those previously created by the compiler.
As a result, the lazy code motion pass of RTL crashed when compiling
some of the new code.

Crashes were privately reported by @richcarl.
</pre>
</div>
</content>
</entry>
<entry>
<title>Don't build a stacktrace if it's only passed to erlang:raise/3</title>
<updated>2018-01-22T13:23:52+00:00</updated>
<author>
<name>Björn Gustavsson</name>
<email>bjorn@erlang.org</email>
</author>
<published>2017-11-28T06:28:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=9b0122b65bdcafbae2a3cfd3299903da0948acab'/>
<id>9b0122b65bdcafbae2a3cfd3299903da0948acab</id>
<content type='text'>
Consider the following function:

    function({function,Name,Arity,CLabel,Is0}, Lc0) -&gt;
      try
        %% Optimize the code for the function.
      catch
        Class:Error:Stack -&gt;
          io:format("Function: ~w/~w\n", [Name,Arity]),
          erlang:raise(Class, Error, Stack)
      end.

The stacktrace is retrieved, but it is only used in the call
to erlang:raise/3. There is no need to build a stacktrace
in this function. We can avoid the building if we introduce
an instruction called raw_raise/3 that works exactly like
the erlang:raise/3 BIF except that its third argument must
be a raw stacktrace.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Consider the following function:

    function({function,Name,Arity,CLabel,Is0}, Lc0) -&gt;
      try
        %% Optimize the code for the function.
      catch
        Class:Error:Stack -&gt;
          io:format("Function: ~w/~w\n", [Name,Arity]),
          erlang:raise(Class, Error, Stack)
      end.

The stacktrace is retrieved, but it is only used in the call
to erlang:raise/3. There is no need to build a stacktrace
in this function. We can avoid the building if we introduce
an instruction called raw_raise/3 that works exactly like
the erlang:raise/3 BIF except that its third argument must
be a raw stacktrace.
</pre>
</div>
</content>
</entry>
<entry>
<title>HiPE: Unique ref receive opt</title>
<updated>2017-11-16T12:24:55+00:00</updated>
<author>
<name>Magnus Lång</name>
<email>margnus1@telia.com</email>
</author>
<published>2017-11-05T15:12:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=8e8380865bb31c119e7f11fbdbbb14ea58ebbef2'/>
<id>8e8380865bb31c119e7f11fbdbbb14ea58ebbef2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>hipe: Extend the basic_SUITE with one more test</title>
<updated>2017-10-10T22:03:51+00:00</updated>
<author>
<name>Kostis Sagonas</name>
<email>kostis@it.uu.se</email>
</author>
<published>2017-10-10T22:03:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=31ffbf3a5f9aa852a6652f01b11728c38b440950'/>
<id>31ffbf3a5f9aa852a6652f01b11728c38b440950</id>
<content type='text'>
that checks the construction of exception information.  The test is
taken from the compiler SUITE but part of it (the one that constructs
exceptions which differ between BEAM and HiPE) is commented out.
Related to the discussion of #1596.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
that checks the construction of exception information.  The test is
taken from the compiler SUITE but part of it (the one that constructs
exceptions which differ between BEAM and HiPE) is commented out.
Related to the discussion of #1596.
</pre>
</div>
</content>
</entry>
<entry>
<title>hipe: Fix range analysis of calls with ignored res</title>
<updated>2017-03-27T14:16:32+00:00</updated>
<author>
<name>Magnus Lång</name>
<email>margnus1@telia.com</email>
</author>
<published>2017-03-27T13:19:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=48b5cc3c35e1d94807e9587c222a41c3cd513f64'/>
<id>48b5cc3c35e1d94807e9587c222a41c3cd513f64</id>
<content type='text'>
HiPE's range analysis would not update the arguments of a callee when
the result of the call was ignored.

Fixes ERL-278.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
HiPE's range analysis would not update the arguments of a callee when
the result of the call was ignored.

Fixes ERL-278.
</pre>
</div>
</content>
</entry>
<entry>
<title>hipe: Add basic_edge_cases test case</title>
<updated>2017-03-16T19:49:42+00:00</updated>
<author>
<name>Magnus Lång</name>
<email>margnus1@telia.com</email>
</author>
<published>2017-03-09T15:59:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=040f6e240a80cb8576ddb3e7b2b49fd7f98aa3dc'/>
<id>040f6e240a80cb8576ddb3e7b2b49fd7f98aa3dc</id>
<content type='text'>
Two tests are added, primarily aimed at the range splitters.

 * test_float_spills, which exercises the rare case of high floating
   point register pressure, including spill slot move coalescing.
 * test_infinite_loops, which tests that various infinite loops are
   properly compiled and do contain reduction tests (otherwise they
   would permanently hog their scheduler and not notice being sent an
   exit signal).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Two tests are added, primarily aimed at the range splitters.

 * test_float_spills, which exercises the rare case of high floating
   point register pressure, including spill slot move coalescing.
 * test_infinite_loops, which tests that various infinite loops are
   properly compiled and do contain reduction tests (otherwise they
   would permanently hog their scheduler and not notice being sent an
   exit signal).
</pre>
</div>
</content>
</entry>
<entry>
<title>hipe: Improve code generation for element/2</title>
<updated>2017-03-06T17:18:23+00:00</updated>
<author>
<name>Magnus Lång</name>
<email>margnus1@telia.com</email>
</author>
<published>2017-02-20T13:57:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=7e66eb6a07928448b7c1a6f265d782bebacd4e6b'/>
<id>7e66eb6a07928448b7c1a6f265d782bebacd4e6b</id>
<content type='text'>
 * Omit bounds check in more cases.
   A test case that needs this change to omit bounds check is added.
 * Improve code generation by reformulating bounds check to decrease
   register pressure.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 * Omit bounds check in more cases.
   A test case that needs this change to omit bounds check is added.
 * Improve code generation by reformulating bounds check to decrease
   register pressure.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add some tests for numeric BIFs</title>
<updated>2016-12-06T12:04:39+00:00</updated>
<author>
<name>Kostis Sagonas</name>
<email>kostis@it.uu.se</email>
</author>
<published>2016-12-06T12:04:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=c570e91a990e939c39dc9f12dbbdfa4b31c925ab'/>
<id>c570e91a990e939c39dc9f12dbbdfa4b31c925ab</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
