Avatar
omochimetaru 12/5/2017 9:27 AM
enumは多分case番号を最初に混ぜ込むんじゃないかなあ
9:29 AM
enum Zoo : Hashable { case cat(Cat) case dog(String) }
9:29 AM
// Zoo.hashValue.getter sil hidden @_T01a3ZooO9hashValueSivg : $@convention(method) (@guaranteed Zoo) -> Int { // %0 // users: %4, %3, %1 bb0(%0 : $Zoo): debug_value %0 : $Zoo, let, name "self", argno 1 // id: %1 %2 = alloc_stack $Int, var, name "result" // users: %131, %126, %88, %85, %75, %72, %63, %25, %22, %12, %9, %134 retain_value %0 : $Zoo // id: %3 switch_enum %0 : $Zoo, case #Zoo.cat!enumelt.1: bb1, case #Zoo.dog!enumelt.1: bb6 // id: %4