tinfo6代表什么?

时间:2018-09-09 21:38:40

标签: haskell ghc cabal haskell-stack

与Haskell尤其是GHC合作,我经常看到 tinfo6 一词。通常,它出现在arch-vendor-os Triple df.withColumn("marks",col("marks") + lit(1)).show 中,就像它是某种操作系统一样。但是 tinfo6 到底是什么意思?

1 个答案:

答案 0 :(得分:4)

  

它出现在arch-vendor-os三元组string str1 = @"<div><div class=\\\""entry-content\\\"">";

我认为您正在将GNU目标三元组与GNU目标三元组混淆。 GHC目标三元组是x86_64-linux-tinfo6

因此,<architecture>-<operating system>-<ABI>是ABI。我对GHC不太了解,但是我记住它的调用约定不是C调用约定。

有趣的事实:该调用约定实际上无法用C表示,因此GHC的C后端实际上调用GCC生成程序集,然后是 Perl (!!!)脚本,该脚本是GHC编译器在汇编代码中搜索调用,并将其重新编写为GHC调用约定;之后,编译器将再次调用GCC(或更确切地说是GAS)来汇编目标文件。 (这种相当聪明但有些疯狂的黑客攻击是推动本机和LLVM后端的原因之一。)

因此,不幸的是,我不知道tinfo6是什么意思,但是我很确定它是GHC呼叫约定或ABI的名称。