我正在研究我自己的编程语言。我目前正在 LLVM IR 中生成代码。我有一个关于带有 phi 的嵌套 If 语句的问题。所以让我们说我的语言中有这个:
if n < 0 then
print("n < 0")
else
if 100 < n then
print("100")
else
print("\n")
Run Code Online (Sandbox Code Playgroud)
我在 llvm ir 中生成了这个:
; If
; ObjectIdentifier
%15 = load %struct.Main*, %struct.Main** %2
%16 = getelementptr inbounds %struct.Main, %struct.Main* %15, i32 0, i32 1
%17 = load i32, i32* %16
; VarValue
%18 = alloca i32
store i32 0, i32* %18
%19 = load i32, i32* %18
; Lower
%20 = icmp slt i32 …
Run Code Online (Sandbox Code Playgroud) 我正在尝试制作一个正则表达式来识别评论。它必须//
以新行或*)
模式开始和结束。
目前,我设法得到了这个(\/\/)([^\n\r]+)
,但我没有成功添加*)
模式。
有小费吗?