-
Notifications
You must be signed in to change notification settings - Fork 10.5k
/
Copy pathiteration.swift
33 lines (30 loc) · 983 Bytes
/
iteration.swift
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
// RUN: %swift -target x86_64-apple-macosx10.9 %s -emit-ir -g -o %t.ll
// RUN: cat %t.ll | FileCheck %s
var puzzleInput = "great minds think alike"
var puzzleOutput = ""
// CHECK-NOT: [ DW_TAG_auto_variable ] [$letter$generator] [line [[@LINE+2]]]
// CHECK: [ DW_TAG_auto_variable ] [letter] [line [[@LINE+1]]]
for letter in puzzleInput {
switch letter {
case "a", "e", "i", "o", "u", " ":
continue
default:
puzzleOutput.append(letter)
}
}
println(puzzleOutput)
func count() {
// CHECK-NOT: [ DW_TAG_auto_variable ] [$i$generator] [line [[@LINE+2]]]
// CHECK: [ DW_TAG_auto_variable ] [i] [line [[@LINE+1]]]
for i in 0...100 {
println(i)
}
}
count()
// End-to-end test:
// RUN: llc %t.ll -filetype=obj -o - | llvm-dwarfdump - | FileCheck %s --check-prefix DWARF-CHECK
// DWARF-CHECK: DW_TAG_variable
// DWARF-CHECK: DW_AT_name {{.*}} "letter"
//
// DWARF-CHECK: DW_TAG_variable
// DWARF-CHECK: DW_AT_name {{.*}} "i"