@extern putchar fun: character sint32 -> sint32 // ./build/brb samples/test.brc -S -x86-asm-syntax=intel /* User type name data age u32 successRatio r32 isActive bool ; */ /* i u32 <- 0, rep text[i] != 0: putchar(text[i]) i++ ; */ // text data <- "Hello world!" /*addStuff asm<"+r, r">: num1 u32, num2 u32 -> u32 add $1, $0 ;*/ /*normAdd fun: num1 sint32, num2 sint32 -> sint32 ret num1 + num2 ;*/ rawAdd raw<"=r,r,r">: num1 sint32, num2 sint32 -> sint32 add $1, $2 mov $0, $1 ; /*rawAdd raw: num1 sint32, num2 sint32 -> sint32 add $1, $2 mov $0, $1 ;*/ /*printChar raw .global REGISTER .text .REGISTER: .byte "Hello", 0xa0 .long RegisterTable //push 0x21 ;*/ main fun -> sint32 /*a sint32 <- 4 b sint32 <- 5 res sint32 <- rawAdd(4, 5)*/ putchar('@') putchar('\n') ret 0 ;