SpecialCaseList: Add support for parsing multiple input files.
[oota-llvm.git] / bindings / go / llvm / transforms_instrumentation.go
index 9b191b26693b630e7cff557d5d9a520b1cb2557b..73e2732cbd9553e88ec2c1453ad0681d438372b7 100644 (file)
@@ -36,8 +36,11 @@ func (pm PassManager) AddMemorySanitizerPass() {
        C.LLVMAddMemorySanitizerPass(pm.C)
 }
 
-func (pm PassManager) AddDataFlowSanitizerPass(abilist string) {
-       cabilist := C.CString(abilist)
-       defer C.free(unsafe.Pointer(cabilist))
-       C.LLVMAddDataFlowSanitizerPass(pm.C, cabilist)
+func (pm PassManager) AddDataFlowSanitizerPass(abilist []string) {
+       abiliststrs := make([]*C.char, len(abilist))
+       for i, arg := range abilist {
+               abiliststrs[i] = C.CString(arg)
+               defer C.free(unsafe.Pointer(abiliststrs[i]))
+       }
+       C.LLVMAddDataFlowSanitizerPass(pm.C, C.int(len(abilist)), &abiliststrs[0])
 }