<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/ocaml.git/middle_end/simplify_primitives.ml, branch atomic_write_cmi</title>
<subtitle>github.com: ocaml/ocaml
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ocaml.git/'/>
<entry>
<title>Optimize away some physical equality (#850)</title>
<updated>2017-08-01T07:04:03+00:00</updated>
<author>
<name>Pierre Chambart</name>
<email>chambart@users.noreply.github.com</email>
</author>
<published>2017-08-01T07:04:03+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ocaml.git/commit/?id=177713ec025cc49eabd7a95ab6d6aaa127d34c81'/>
<id>177713ec025cc49eabd7a95ab6d6aaa127d34c81</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix MPR #7501: stack overflow on uunf with flambda (#1089)</title>
<updated>2017-04-10T10:52:31+00:00</updated>
<author>
<name>Pierre Chambart</name>
<email>chambart@users.noreply.github.com</email>
</author>
<published>2017-04-10T10:52:31+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ocaml.git/commit/?id=617f94f2cafbd93816264f195135cc813fa64c22'/>
<id>617f94f2cafbd93816264f195135cc813fa64c22</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Avoid checking twice if divisor is zero (#702)</title>
<updated>2016-10-05T14:42:40+00:00</updated>
<author>
<name>Pierre Chambart</name>
<email>chambart@users.noreply.github.com</email>
</author>
<published>2016-10-05T14:42:40+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ocaml.git/commit/?id=575f20368df908fb44f748754fe0668ce71b1c00'/>
<id>575f20368df908fb44f748754fe0668ce71b1c00</id>
<content type='text'>
* Avoid checking twice if divisor is zero

The flambda branch before merging assumed that Pdivint and Pmodint where
already checked when entering Cmmgen. This was not the case anymore
after merging and this change was lost. This fix this overlook by adding
an annotation to the Pdivint and Pmodint primitive telling whether the
division by zero was already checked.

The reason to move the test generation to Closure_conversion in the
flambda branch was to allow the division primitive to be considered as
pure without needing to check for the effective value of the
divisor. This simplified Semantics_of_primitives a lot.

* Bigarray div and mod also carry safety information

* Handle bigint div and mod like int div and mod in closure_conversion

* Update Changes

* Test for divisions by zero

* Turn Pdivbint and Pmodbint argument into an inline record
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Avoid checking twice if divisor is zero

The flambda branch before merging assumed that Pdivint and Pmodint where
already checked when entering Cmmgen. This was not the case anymore
after merging and this change was lost. This fix this overlook by adding
an annotation to the Pdivint and Pmodint primitive telling whether the
division by zero was already checked.

The reason to move the test generation to Closure_conversion in the
flambda branch was to allow the division primitive to be considered as
pure without needing to check for the effective value of the
divisor. This simplified Semantics_of_primitives a lot.

* Bigarray div and mod also carry safety information

* Handle bigint div and mod like int div and mod in closure_conversion

* Update Changes

* Test for divisions by zero

* Turn Pdivbint and Pmodbint argument into an inline record
</pre>
</div>
</content>
</entry>
<entry>
<title>clean up code duplication and whitespace</title>
<updated>2016-08-08T15:02:19+00:00</updated>
<author>
<name>Damien Doligez</name>
<email>damien.doligez@inria.fr</email>
</author>
<published>2016-08-08T15:02:19+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ocaml.git/commit/?id=6afcbc96b88ef8824081f3954fb7ec7f9ba996f3'/>
<id>6afcbc96b88ef8824081f3954fb7ec7f9ba996f3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>add needed lambda IR for safe string</title>
<updated>2016-08-07T15:07:10+00:00</updated>
<author>
<name>Hongbo Zhang</name>
<email>bobzhang1988@gmail.com</email>
</author>
<published>2016-08-07T15:07:10+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ocaml.git/commit/?id=a36cd4c4ec7beb41d1456ae5ad6d3dfe1b7c6491'/>
<id>a36cd4c4ec7beb41d1456ae5ad6d3dfe1b7c6491</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fix whitespace, long lines, headers</title>
<updated>2016-08-01T14:06:59+00:00</updated>
<author>
<name>Damien Doligez</name>
<email>damien.doligez@inria.fr</email>
</author>
<published>2016-08-01T14:06:59+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ocaml.git/commit/?id=0b4fbc2b3083f2fb78713cb56a031768be2c85f2'/>
<id>0b4fbc2b3083f2fb78713cb56a031768be2c85f2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Optimize constant char comparison</title>
<updated>2016-07-28T17:35:54+00:00</updated>
<author>
<name>Pierre Chambart</name>
<email>pierre.chambart@ocamlpro.com</email>
</author>
<published>2016-07-21T01:01:20+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ocaml.git/commit/?id=86c9e4f759ef315b6fc51da9e2fc9894a238d2ba'/>
<id>86c9e4f759ef315b6fc51da9e2fc9894a238d2ba</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Make constant string access effect free</title>
<updated>2016-07-28T17:35:54+00:00</updated>
<author>
<name>Pierre Chambart</name>
<email>pierre.chambart@ocamlpro.com</email>
</author>
<published>2016-07-21T00:56:29+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ocaml.git/commit/?id=d9eaf8a34b023ca8219474becf4f0d8ae1e6cc65'/>
<id>d9eaf8a34b023ca8219474becf4f0d8ae1e6cc65</id>
<content type='text'>
This allows removing them when the value of constant strings can be propagated.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This allows removing them when the value of constant strings can be propagated.
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove obsolete comment</title>
<updated>2016-07-28T17:35:54+00:00</updated>
<author>
<name>Pierre Chambart</name>
<email>pierre.chambart@ocamlpro.com</email>
</author>
<published>2016-07-21T00:55:41+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ocaml.git/commit/?id=9b23b97cd2cf9b62f3d4951be46f87a04ab8fc78'/>
<id>9b23b97cd2cf9b62f3d4951be46f87a04ab8fc78</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Optimize away some trivial physical differences</title>
<updated>2016-07-28T17:35:54+00:00</updated>
<author>
<name>Pierre Chambart</name>
<email>pierre.chambart@ocamlpro.com</email>
</author>
<published>2016-07-20T23:21:11+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ocaml.git/commit/?id=4e22061ff977e3d0acc69fc25221d4fa818fe468'/>
<id>4e22061ff977e3d0acc69fc25221d4fa818fe468</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
