“…Analyzing may concentrate on whole program, or focuses on each program point. There are many aspects of analyzing multi-threaded programs: pointer analysis (El-Zawawy, 2012a;El-Zawawy, 2011;El-Zawawy, 2011a;El-Zawawy, 2011b;Rugina & Rinard, 2003), optimization uses (El-Zawawy & Nayel, 2011;Knoop & Steffen, 1999;Knoop, Steffen, & Vollmer, 1996;Lee, Midkiff, & Padua, 1998;Lee, Padua, & Midkiff, 1999), data race detection (Cheng, Feng, Leiserson, Randall, & Stark, 1998;Rugina & Rinard, 2005 ), and deadlock detection (Blieberger, Burgstaller, & Scholz, 2000;Koskinen & Herlihy, 2008;Wang, Kelly, Kudlur, Lafortune, & Mahlke, 2008).…”