评论者:alexmiller
补丁格式看起来更好。进一步查看补丁本身,就 clojure 而言,它已经使用了正确的bytecode来进行检查或不检查,所以可能甚至不需要?
如果我不使用补丁来编译(
(defn foo-div ^long [^long a ^long b] (quot a b))
那么那个fn的字节码是
`
public final long invokePrim(long, long);
Code:
0: lload_1
1: lload_3
2: ldiv
3: lreturn
`
同样,两个长整型数的quot也产生相同的代码,只是多了lrem。我认为补丁对生成的字节码没有净效应?