[PATCH] D95924: [Example][NFC} Add testcase for BrainF HelloWorld

Shivam Gupta via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 19 08:43:53 PST 2021


xgupta marked 4 inline comments as done.
xgupta added a comment.

Hello @t.p.northover and @jrtc27!
Thanks for giving time for reviewing the revision.  I understand most things but when I combine two test cases in one file using `--check-prefix=`, check to start failing, So instead of updating the patch I copy-paste the test case here.

  ; RUN: BrainF %s -o - | llvm-dis | FileCheck --check-prefix=CHECK %s
  ; RUN: BrainF %s -o - | lli 2>&1 | FileCheck --check-prefix=EXEC %s
  
  ++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.
  
  # CHECK-LABEL:      define void @brainf() {
  # CHECK-NEXT:      brainf:
  # CHECK-NEXT:        %malloccall = tail call i8* @malloc(i32 mul (i32 ptrtoint (i8* getelementptr (i8, i8* null, i32 1) to i32), i32 65536))
  # CHECK-NEXT:        call void @llvm.memset.p0i8.i32(i8* %malloccall, i8 0, i32 65536, i1 false)
  # CHECK-NEXT:        %head = getelementptr i8, i8* %malloccall, i32 32768
  # CHECK-NEXT:        %tape = load i8, i8* %head, align 1
  # CHECK:             store i8 %tape2, i8* %head, align 1
  # CHECK:             br label %brainf3
  # CHECK:           brainf1:                                          ; preds = %brainf55
  # CHECK-NEXT:        tail call void @free(i8* %malloccall)
  # CHECK-NEXT:        ret void
  # CHECK:       }
  # CHECK-LABEL:      define i32 @main(i32 %argc, i8** %argv) {
  # CHECK-NEXT:      main.0:
  # CHECK-NEXT:        call void @brainf()
  # CHECK-NEXT:        ret i32 0
  # CHECK:       }
  
  # EXEC: Hello World!

Please tell me what I am missing now? 
(Sorry for the late reply, my laptop went for repairing)


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D95924/new/

https://reviews.llvm.org/D95924



More information about the llvm-commits mailing list