We introduce a static detector, Saber, for detecting memory leaks in C programs. Leveraging recent advances on sparse pointer analysis, Saber is the first to use a full-sparse value-flow analysis for detecting memory leaks statically. Saber tracks the flow of values from allocation to free sites using a sparse value-flow graph (SVFG) that captures def-use chains and value flows via assignments for all memory locations represented by both top-level and address-taken pointers. By exploiting field-, flow-and context-sensitivity during different phases of the analysis, Saber detects memory leaks in a program by solving a graph reachability problem on its SVFG. Saber, which is fully implemented in Open64, is effective at detecting 254 leaks in t...
Static program analysis computes information about a program without executing the program. This can...
AbstractThe size of today’s programs continues to grow, as does the number of bugs they contain. Tes...
The vulnerability is a flaw in the system’s implementation which may result in severe consequences. ...
Code analysis has discovered that memory leaks are common in the C programming language. In the lite...
© 2016 ACM.C is the dominant programming language for developing embedded software, operating system...
Memory errors in C programs are the root causes of many defects and vulnerabilitiesin software engin...
Pointer analysis, as a fundamental research, is to identify the possible runtime values of a pointer...
We study the applicability of pointer analysis algorithms (originally aimed at optimizing compilers)...
Abstract. We present a novel leak detection algorithm. To prove the absence of a memory leak, the al...
Buffer overflow detection using static analysis can provide a powerful tool for software programmers...
Static detection of memory leaks in a managed language such as Java is attractive because it does no...
© 2016 ACM.This paper presents SVF, a tool that enables scalable and precise interprocedural Static ...
Background. One of the main reasons for memory corruption vulnerabilities lies in the lack of built...
Memory leaks are known to be a major cause of reliability and performance issues in software. This p...
The size of today’s programs continues to grow, as does the number of bugs they contain. Testing alo...
Static program analysis computes information about a program without executing the program. This can...
AbstractThe size of today’s programs continues to grow, as does the number of bugs they contain. Tes...
The vulnerability is a flaw in the system’s implementation which may result in severe consequences. ...
Code analysis has discovered that memory leaks are common in the C programming language. In the lite...
© 2016 ACM.C is the dominant programming language for developing embedded software, operating system...
Memory errors in C programs are the root causes of many defects and vulnerabilitiesin software engin...
Pointer analysis, as a fundamental research, is to identify the possible runtime values of a pointer...
We study the applicability of pointer analysis algorithms (originally aimed at optimizing compilers)...
Abstract. We present a novel leak detection algorithm. To prove the absence of a memory leak, the al...
Buffer overflow detection using static analysis can provide a powerful tool for software programmers...
Static detection of memory leaks in a managed language such as Java is attractive because it does no...
© 2016 ACM.This paper presents SVF, a tool that enables scalable and precise interprocedural Static ...
Background. One of the main reasons for memory corruption vulnerabilities lies in the lack of built...
Memory leaks are known to be a major cause of reliability and performance issues in software. This p...
The size of today’s programs continues to grow, as does the number of bugs they contain. Testing alo...
Static program analysis computes information about a program without executing the program. This can...
AbstractThe size of today’s programs continues to grow, as does the number of bugs they contain. Tes...
The vulnerability is a flaw in the system’s implementation which may result in severe consequences. ...