断言失败:(LHSCst != RHSCst &&“比较上面未折叠的内容?”)
我正在尝试使用 ICU v4.8.1 编译 ICU v4.8.1。 adobe.com/technologies/alchemy/" rel="nofollow">Alchemy,但遇到了 LLVM 问题:
Assertion failed: (LHSCst != RHSCst && "Compares not folded above?"), function visitAnd, file /Volumes/data/dev/FlaCC/llvm-2.1/lib/Transforms/Scalar/InstructionCombining.cpp, line 3465.
0 llvm-ld 0x00264aee _ZNSt8_Rb_treeIN4llvm3sys4PathES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13insert_uniqueERKS2_ + 6078
1 llvm-ld 0x00265092 _ZNSt8_Rb_treeIN4llvm3sys4PathES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13insert_uniqueERKS2_ + 7522
2 libSystem.B.dylib 0x970a805b _sigtramp + 43
3 ??? 0xffffffff 0x0 + 4294967295
4 libSystem.B.dylib 0x971355a5 raise + 26
5 libSystem.B.dylib 0x9714b6e4 abort + 93
6 libSystem.B.dylib 0x9713820f __assert_rtn + 252
7 llvm-ld 0x000a0816 _ZN4llvm15callDefaultCtorIN91_GLOBAL__N__Volumes_data_dev_FlaCC_llvm_2.1_lib_Transforms_Scalar_GVN.cpp_00000000_4964B02A3GVNEEEPNS_4PassEv + 252214
8 llvm-ld 0x000cf25e _ZN4llvm11InstVisitorIN108_GLOBAL__N__Volumes_data_dev_FlaCC_llvm_2.1_lib_Transforms_Scalar_InstructionCombining.cpp_00000000_6BB61AFF12InstCombinerEPNS_11InstructionEE5visitERS3_ + 766
9 llvm-ld 0x000c5895 _ZN4llvm15callDefaultCtorIN91_GLOBAL__N__Volumes_data_dev_FlaCC_llvm_2.1_lib_Transforms_Scalar_GVN.cpp_00000000_4964B02A3GVNEEEPNS_4PassEv + 403893
10 llvm-ld 0x000c631c _ZN4llvm15callDefaultCtorIN91_GLOBAL__N__Volumes_data_dev_FlaCC_llvm_2.1_lib_Transforms_Scalar_GVN.cpp_00000000_4964B02A3GVNEEEPNS_4PassEv + 406588
11 llvm-ld 0x002004a6 _ZN4llvm12FunctionPassD1Ev + 20998
12 llvm-ld 0x002008fa _ZN4llvm12FunctionPassD1Ev + 22106
13 llvm-ld 0x00200e51 _ZN4llvm12FunctionPassD1Ev + 23473
14 llvm-ld 0x0020125a _ZN4llvm12FunctionPassD1Ev + 24506
15 llvm-ld 0x002012da _ZN4llvm12FunctionPassD1Ev + 24634
16 llvm-ld 0x00002f10 0x0 + 12048
17 llvm-ld 0x000091e2 _ZN4llvm2cl3optINS_12PluginLoaderELb0ENS0_6parserISsEEE16handleOccurrenceEjPKcRKSs + 11986
18 llvm-ld 0x00002706 0x0 + 9990
make[2]: *** [../../bin/genrb] Error 6
make[1]: *** [all-recursive] Error 2
make: *** [all-recursive] Error 2
什么样的代码会导致链接器中出现此问题?这似乎与强制转换有关(“left-hand-side-cast != right-hand-side-cast”)。我不会修改 ICU 代码以使其编译,但我不确定要修改什么。
I'm trying to compile ICU v4.8.1 with Alchemy, but am running into an LLVM problem:
Assertion failed: (LHSCst != RHSCst && "Compares not folded above?"), function visitAnd, file /Volumes/data/dev/FlaCC/llvm-2.1/lib/Transforms/Scalar/InstructionCombining.cpp, line 3465.
0 llvm-ld 0x00264aee _ZNSt8_Rb_treeIN4llvm3sys4PathES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13insert_uniqueERKS2_ + 6078
1 llvm-ld 0x00265092 _ZNSt8_Rb_treeIN4llvm3sys4PathES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13insert_uniqueERKS2_ + 7522
2 libSystem.B.dylib 0x970a805b _sigtramp + 43
3 ??? 0xffffffff 0x0 + 4294967295
4 libSystem.B.dylib 0x971355a5 raise + 26
5 libSystem.B.dylib 0x9714b6e4 abort + 93
6 libSystem.B.dylib 0x9713820f __assert_rtn + 252
7 llvm-ld 0x000a0816 _ZN4llvm15callDefaultCtorIN91_GLOBAL__N__Volumes_data_dev_FlaCC_llvm_2.1_lib_Transforms_Scalar_GVN.cpp_00000000_4964B02A3GVNEEEPNS_4PassEv + 252214
8 llvm-ld 0x000cf25e _ZN4llvm11InstVisitorIN108_GLOBAL__N__Volumes_data_dev_FlaCC_llvm_2.1_lib_Transforms_Scalar_InstructionCombining.cpp_00000000_6BB61AFF12InstCombinerEPNS_11InstructionEE5visitERS3_ + 766
9 llvm-ld 0x000c5895 _ZN4llvm15callDefaultCtorIN91_GLOBAL__N__Volumes_data_dev_FlaCC_llvm_2.1_lib_Transforms_Scalar_GVN.cpp_00000000_4964B02A3GVNEEEPNS_4PassEv + 403893
10 llvm-ld 0x000c631c _ZN4llvm15callDefaultCtorIN91_GLOBAL__N__Volumes_data_dev_FlaCC_llvm_2.1_lib_Transforms_Scalar_GVN.cpp_00000000_4964B02A3GVNEEEPNS_4PassEv + 406588
11 llvm-ld 0x002004a6 _ZN4llvm12FunctionPassD1Ev + 20998
12 llvm-ld 0x002008fa _ZN4llvm12FunctionPassD1Ev + 22106
13 llvm-ld 0x00200e51 _ZN4llvm12FunctionPassD1Ev + 23473
14 llvm-ld 0x0020125a _ZN4llvm12FunctionPassD1Ev + 24506
15 llvm-ld 0x002012da _ZN4llvm12FunctionPassD1Ev + 24634
16 llvm-ld 0x00002f10 0x0 + 12048
17 llvm-ld 0x000091e2 _ZN4llvm2cl3optINS_12PluginLoaderELb0ENS0_6parserISsEEE16handleOccurrenceEjPKcRKSs + 11986
18 llvm-ld 0x00002706 0x0 + 9990
make[2]: *** [../../bin/genrb] Error 6
make[1]: *** [all-recursive] Error 2
make: *** [all-recursive] Error 2
What kind of code leads to this problem in the linker? It seems to have something to do with casting ("left-hand-side-cast != right-hand-side-cast"). I'm not above modifying the ICU code to make it compile, but I'm not sure what to modify.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
可以是任意数量的事情。可能的原因是错误的 llvm IR 被馈送到链接器中。最好的选择是与 Alchemy 人员交谈,看看他们在做什么,并让他们进行调试。
Could be any number of things. The likely cause is bad llvm IR being fed into the linker. Your best bet is to talk to the Alchemy guys and see what they're doing and get them to debug it.