Skip to content
GitLab
    • Explore Projects Groups Topics Snippets
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • S SCNUCC
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 11
    • Issues 11
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Terraform modules
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • BetterThanGnu
  • SCNUCC
  • Issues
  • #46
Closed
Open
Issue created 10 months ago by 邓实诚@CaptainDeveloper
  • New related issue

  • New related issue

BRIR的GetOperands返回空数组

Closed

BRIR的GetOperands返回空数组

针对下面的输入:

int main() {
  int a = 10;
}

生成下面的LLVM IR

define i32 @main( ) {
block114514:
  br label %block114514
block114514:
  ret i32 0
}


declare i32 @getint()
declare i32 @getch()
declare float @getfloat()
declare i32 @getarray(i32* %0)
declare i32 @getfarray(float* %0)
declare void @putint(i32 %0)
declare void @putch(i32 %0)
declare void @putarray(i32 %0, i32* %1)
declare void @putfloat(float %0)
declare void @putfarray(i32 %0, float* %1)
declare void @putf(i8* %0, ...)
declare void @before_main()
declare void @after_main()
declare void @_sysy_starttime(i32 %0)
declare void @_sysy_stoptime(i32 %0)


declare void @llvm.memset.p0.i32(ptr nocapture writeonly, i8, i32, i1 immarg)

image

问题一:LLVM IR中的两个block的编号相同呢 问题二:BRIR的GetOperands返回空数组,导致后端运行出错

    Tasks

    ...

    Linked items
    0

    Link issues together to show that they're related. Learn more.

    Related merge requests

    Activity


    • 邓实诚 assigned to @Captain 10 months ago

      assigned to @Captain

    • 邓实诚 created branch 46-brir-getoperands to address this issue 10 months ago

      created branch 46-brir-getoperands to address this issue

    • BetterThanGnu mentioned in commit 0e8853bc 10 months ago

      mentioned in commit 0e8853bc

    • 邓实诚 mentioned in merge request !75 (merged) 10 months ago

      mentioned in merge request !75 (merged)

    • 邓实诚 closed 10 months ago

      closed

    Please register or sign in to reply
    Assignee
    邓实诚's avatar
    邓实诚
    Assign to
    Labels
    0
    None
    0
    None
      Assign labels
    • Manage project labels

    Milestone
    No milestone
    None
    Due date
    None
    None
    None
    Time tracking
    Confidentiality
    Not confidential

    You are going to turn on confidentiality. Only project members with at least the Reporter role, the author, and assignees can view or be notified about this issue.

    Lock issue
    Unlocked
    Participants
    Reference:

    Menu

    Explore Projects Groups Topics Snippets