首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Halide: X86汇编代码生成

Halide: X86汇编代码生成
EN

Stack Overflow用户
提问于 2018-06-20 06:19:21
回答 1查看 187关注 0票数 0

我是新来哈利德的。我正在尝试从源代码(https://github.com/halide/Halide/tree/master/apps/camera_pipe)编译camera_pipe应用程序。我已经成功地编译了camera_pipe.cpp。它生成"curved.s“汇编代码。

代码语言:javascript
复制
# Lfunc_begin0:
    .loc    3 12 0                 
#/data/nfs_home/akafi/Halide_CoreIR/src/runtime/posix_allocator.cpp:12:0
    .cfi_startproc
#BB#0:
    pushq   %rbp
.Ltmp0:
    .cfi_def_cfa_offset 16
.Ltmp1:
    .cfi_offset %rbp, -16
    movq    %rsp, %rbp
.Ltmp2:
    .cfi_def_cfa_register %rbp
    #DEBUG_VALUE: default_malloc:user_context <- %RDI
    #DEBUG_VALUE: default_malloc:x <- %RSI
.Ltmp3:
    #DEBUG_VALUE: default_malloc:alignment <- 128
    .loc    3 15 27 prologue_end   
#/data/nfs_home/akafi/Halide_CoreIR/src/runtime/posix_allocator.cpp:15:27
    subq    $-128, %rsi
.Ltmp4:
    .loc    3 15 18 is_stmt 0       
# /data/nfs_home/akafi/Halide_CoreIR/src/runtime/posix_allocator.cpp:15:18
    movq    %rsi, %rdi
.Ltmp5:
    callq   malloc@PLT
    movq    %rax, %rcx
.Ltmp6:
    #DEBUG_VALUE: default_malloc:orig <- %RCX
    xorl    %eax, %eax
    .loc    3 16 14 is_stmt 1       
# /data/nfs_home/akafi/Halide_CoreIR/src/runtime/posix_allocator.cpp:16:14
.Ltmp7:
    testq   %rcx, %rcx
    je  .LBB0_2
.Ltmp8:
# BB#1:
    #DEBUG_VALUE: default_malloc:orig <- %RCX
    .loc    3 21 68                 
# data/nfs_home/akafi/Halide_CoreIR/src/runtime/posix_allocator.cpp:21:68
    movq    %rcx, %rax
    addq    $135, %rax

......
......

我已经试过调试源代码了。我发现他"camera_pipe.cpp“调用了”/Halide/src/CodeGENX86.cpp“。

生成的程序集看起来不像X86程序集。那么"CodeGen_X86.cpp“的作用是什么呢?

EN

回答 1

Stack Overflow用户

发布于 2018-07-09 10:24:52

听起来你可能是在用一棵非常老的哈利德树来构建--很长一段时间没有任何文件camera_pipe.cpp,生成的输出也不叫curved.*,等等。

也就是说,CodeGen_X86.cpp中的x86后端确实会生成x86代码。您发布的程序集是x86_64程序集。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50937683

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档