Clang error: Cannot compile builtin function
Clang error: Cannot compile builtin function
我正在编译一个额外单独添加了 GCC 库的代码。编译时出现 clang 错误
cannot compile
正在显示
我试过添加标志。 -std=89gnu
不适用于 clang。经过一番检查,在编译器文件中发现了相同的功能。
BUILTIN(__builtin_init_dwarf_reg_size_table, "vv*", "n")
错误:
gcc/unwind-dw2.c:1336:3: error: cannot compile this __builtin_init_dwarf_reg_size_table
那是一个非常奇怪的错误信息,你能把完整的放在这里吗?另外,我很惊讶你想用 clang 编译 libgcc,我认为以前没有人真正尝试过。一些更好的重现说明会有所帮助,因为这似乎有效:
echristo@jhereg ~/tmp> 猫 foo.c
char x[16]; void a() { __builtin_init_dwarf_reg_size_table(x); }
echristo@jhereg ~/tmp> clang -S -o - foo.c --target=x86_64-linux-gnu
.text
.file "foo.c"
.globl a # -- Begin function a
.p2align 4, 0x90
.type a,@function
a: # @a
.cfi_startproc
# %bb.0:
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset %rbp, -16
movq %rsp, %rbp
.cfi_def_cfa_register %rbp
movb , x
movb , x+1
movb , x+2
movb , x+3
movb , x+4
movb , x+5
movb , x+6
movb , x+7
movb , x+8
movb , x+9
movb , x+10
movb , x+11
movb , x+12
movb , x+13
movb , x+14
movb , x+15
movb , x+16
popq %rbp
.cfi_def_cfa %rsp, 8
retq
.Lfunc_end0:
.size a, .Lfunc_end0-a
.cfi_endproc
# -- End function
.type x,@object # @x
.comm x,16,16
.ident "clang version 9.0.0 (https://github.com/llvm/llvm-project.git b669fea42f5c2a5b203c3f0da2a6b04b90bfd5a7)"
.section ".note.GNU-stack","",@progbits
.addrsig
.addrsig_sym x
我正在编译一个额外单独添加了 GCC 库的代码。编译时出现 clang 错误
cannot compile
正在显示
我试过添加标志。 -std=89gnu
不适用于 clang。经过一番检查,在编译器文件中发现了相同的功能。
BUILTIN(__builtin_init_dwarf_reg_size_table, "vv*", "n")
错误:
gcc/unwind-dw2.c:1336:3: error: cannot compile this __builtin_init_dwarf_reg_size_table
那是一个非常奇怪的错误信息,你能把完整的放在这里吗?另外,我很惊讶你想用 clang 编译 libgcc,我认为以前没有人真正尝试过。一些更好的重现说明会有所帮助,因为这似乎有效:
echristo@jhereg ~/tmp> 猫 foo.c
char x[16]; void a() { __builtin_init_dwarf_reg_size_table(x); }
echristo@jhereg ~/tmp> clang -S -o - foo.c --target=x86_64-linux-gnu
.text
.file "foo.c"
.globl a # -- Begin function a
.p2align 4, 0x90
.type a,@function
a: # @a
.cfi_startproc
# %bb.0:
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset %rbp, -16
movq %rsp, %rbp
.cfi_def_cfa_register %rbp
movb , x
movb , x+1
movb , x+2
movb , x+3
movb , x+4
movb , x+5
movb , x+6
movb , x+7
movb , x+8
movb , x+9
movb , x+10
movb , x+11
movb , x+12
movb , x+13
movb , x+14
movb , x+15
movb , x+16
popq %rbp
.cfi_def_cfa %rsp, 8
retq
.Lfunc_end0:
.size a, .Lfunc_end0-a
.cfi_endproc
# -- End function
.type x,@object # @x
.comm x,16,16
.ident "clang version 9.0.0 (https://github.com/llvm/llvm-project.git b669fea42f5c2a5b203c3f0da2a6b04b90bfd5a7)"
.section ".note.GNU-stack","",@progbits
.addrsig
.addrsig_sym x