Please use native size. Eg Int# and/or Word#<div><br></div><div>Booleans should always always<span></span> be a size that fits in native registers.  (If there&#39;s good reasons to the contrary, I&#39;d love to hear them)</div>
<div><br></div><div>Thanks Luite for noticing this!</div><div><br>On Thursday, August 15, 2013, Jan Stolarek  wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
&gt; for me personally Bool would be even better<br>
To get a Bool you can use wrappers defined in the same module, e.g.:<br>
<br>
geInt64# :: Int64# -&gt; Int64# -&gt; Bool<br>
geInt64# a b = tagToEnum# (int64ToInt# (geInt64## a b))<br>
<br>
Looking at the implementation of this wrapper I think Luite has a point - to get a Bool it has to be caste to a machine supported Int#. So I think that it would make sense to have these primops retunr Int# instead of Int64#, but I&#39;d like to hear what others have to say.<br>

<br>
Janek<br>
<br>
<br>
<br>
<br>
----- Oryginalna wiadomość -----<br>
Od: &quot;Luite Stegeman&quot; &lt;<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;stegeman@gmail.com&#39;)">stegeman@gmail.com</a>&gt;<br>
Do: &quot;ghc-devs&quot; &lt;<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;ghc-devs@haskell.org&#39;)">ghc-devs@haskell.org</a>&gt;<br>
Wysłane: czwartek, 15 sierpień 2013 16:36:59<br>
Temat: Change return type for Int64# and Word64# comparisons?<br>
<br>
<br>
<br>
Hi all,<br>
<br>
<br>
With the recent change of comparison primops to return Int# instead of Bool, the 64 bit operations were also changed, to return Int64# or Word64#:<br>
<br>
<br>
<a href="https://github.com/jstolarek/packages-ghc-prim/commit/07920f03d76dbaec64e3829404d332af22d744fe" target="_blank">https://github.com/jstolarek/packages-ghc-prim/commit/07920f03d76dbaec64e3829404d332af22d744fe</a><br>

<br>
<br>
<br>
It seems a bit wasteful to me to return a value bigger than a machine word for just a boolean. Changing the type to Int# would make the same optimizations possible as for the native-sized primops (though  since they map to JavaScript bools in GHCJS).<br>

<br>
<br>
thoughts?<br>
<br>
<br>
luite<br>
<br>
<br>
_______________________________________________<br>
ghc-devs mailing list<br>
<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;ghc-devs@haskell.org&#39;)">ghc-devs@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/ghc-devs" target="_blank">http://www.haskell.org/mailman/listinfo/ghc-devs</a><br>
<br>
_______________________________________________<br>
ghc-devs mailing list<br>
<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;ghc-devs@haskell.org&#39;)">ghc-devs@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/ghc-devs" target="_blank">http://www.haskell.org/mailman/listinfo/ghc-devs</a><br>
</blockquote></div>