Igor L. Markov

277 papers A* 29A 46B 5C 4Misc 1Journal 125Unranked 55
YearRankTypeTitle / Venue / Authors
2025 A conf
ICCAD
Qiang Xu, Leon Stok, Rolf Drechsler, Xi Wang, Grace Li Zhang, Igor L. Markov
2025 J jnl
CoRR
Qiang Xu, Leon Stok, Rolf Drechsler, Xi Wang, Grace Li Zhang, Igor L. Markov
2024 J jnl
CoRR
Masoud Mohseni, Artur Scherer, K. Grace Johnson, Oded Wertheim, Matthew Otten, Navid Anjum Aadit, Yuri Alexeev, Kirk M. Bresniker, Kerem Yunus Çamsari, Barbara M. Chapman, Soumitra Chatterjee, Gebremedhin A. Dagnew, Aniello Esposito, Farah Fahim, Marco Fiorentino, Archit Gajjar, Abdullah Khalid, Xiangzhou Kong, Bohdan Kulchytskyy, Elica Kyoseva, Ruoyu Li, Paul Aaron Lott, Igor L. Markov, Robert F. McDermott, Giacomo Pedretti, Pooja Rao, Eleanor Gilbert Rieffel, Allyson Silva, John Sorebo, Panagiotis Spentzouris, Ziv Steiner, Boyan Torosov, Davide Venturelli, Robert J. Visser, Zak Webb, Xin Zhan, Yonatan Cohen, Pooya Ronagh, Alan Ho, Raymond G. Beausoleil, John M. Martinis
2024 J jnl
Mach. Learn.
Pavlos Athanasios Apostolopoulos, Zehui Wang, Hanson Wang, Tenghyu Xu, Chad Zhou, Kittipat Virochsiri, Norm Zhou, Igor L. Markov
2024 B conf
EDBT
Graham Cormode, Igor L. Markov, Harish Srinivas
2024 J jnl
Commun. ACM
Igor L. Markov
2023 J jnl
CoRR
Daniel S. Johnson, Igor L. Markov
2023 J jnl
CoRR
Andrii Maksymov, Jason Nguyen, Yunseong Nam, Igor L. Markov
2023 A* conf
DAC
Qingfeng Wang, Ze-Pei Cian, Ming Li, Igor L. Markov, Yunseong Nam
2023 J jnl
Proc. VLDB Endow.
Graham Cormode, Igor L. Markov
2023 J jnl
ACM Trans. Design Autom. Electr. Syst.
Igor L. Markov, Fan Yang, Li Shang, Hai Zhou
2023 J jnl
CoRR
Chung-wei Lee, Pavlos Athanasios Apostolopulos, Igor L. Markov
2023 J jnl
CoRR
Igor L. Markov, Pavlos Athanasios Apostolopoulos, Mia Garrard, Tianyu Qie, Yin Huang, Tanvi Gupta, Anika Li, Cesar Cardoso, George Han, Ryan Maghsoudian, Norm Zhou
2023 J jnl
CoRR
Igor L. Markov
2022 J jnl
ACM Trans. Quantum Comput.
Stefan Hillmich, Alwin Zulehner, Richard Kueng, Igor L. Markov, Robert Wille
2022 J jnl
CoRR
Rasika Bhalerao, Mohammad Al-Rubaie, Anand Bhaskar, Igor L. Markov
2022 A* conf
HPCA
Andrii Maksymov, Jason Nguyen, Vandiver Chaplin, Yun Seong Nam, Igor L. Markov
2022 J jnl
CoRR
Graham Cormode, Igor L. Markov
2022 A* conf
KDD
Igor L. Markov, Hanson Wang, Nitya S. Kasturi, Shaun Singh, Mia R. Garrard, Yin Huang, Sze Wai Celeste Yuen, Sarah Tran, Zehui Wang, Igor Glotov, Tanvi Gupta, Peng Chen, Boshuang Huang, Xiaowen Xie, Michael Belkin, Sal Uryasev, Sam Howie, Eytan Bakshy, Norm Zhou
2021 A conf
DATE
Stefan Hillmich, Richard Kueng, Igor L. Markov, Robert Wille
2021 J jnl
CoRR
Graham Cormode, Igor L. Markov
2021 J jnl
CoRR
Andrii O. Maksymov, Jason Nguyen, Vandiver Chaplin, Yun Seong Nam, Igor L. Markov
2021 A* conf
HPCA
Aneeqa Fatima, Igor L. Markov
2021 J jnl
CoRR
Igor L. Markov, Hanson Wang, Nitya Kasturi, Shaun Singh, Sze Wai Yuen, Mia Garrard, Sarah Tran, Yin Huang, Zehui Wang, Igor Glotov, Tanvi Gupta, Boshuang Huang, Peng Chen, Xiaowen Xie, Michael Belkin, Sal Uryasev, Sam Howie, Eytan Bakshy, Norm Zhou
2021 J jnl
CoRR
Pavlos Athanasios Apostolopoulos, Zehui Wang, Hanson Wang, Chad Zhou, Kittipat Virochsiri, Norm Zhou, Igor L. Markov
2021 J jnl
CoRR
Binh Vu, Igor L. Markov
2021 A conf
CIKM
Xiuyan Ni, Shujian Bu, Lucas Adams, Igor L. Markov
2021 J jnl
CoRR
Xiuyan Ni, Shujian Bu, Igor L. Markov
2021 J jnl
CoRR
Igor L. Markov, Jacqueline Liu, Adam Vagner
2021 conf
ICBINB@NeurIPS
Nitya Kasturi, Igor L. Markov
2021 J jnl
CoRR
Nitya Kasturi, Igor L. Markov
2020 conf
ASP-DAC
Alwin Zulehner, Stefan Hillmich, Igor L. Markov, Robert Wille
2020 J jnl
CoRR
Aneeqa Fatima, Igor L. Markov
2020 A* conf
DAC
Stefan Hillmich, Igor L. Markov, Robert Wille
2020 A* conf
DAC
Igor L. Markov, Aneeqa Fatima, Sergei V. Isakov, Sergio Boixo
2020 J jnl
CoRR
R. Iris Bahar, Alex K. Jones, Srinivas Katkoori, Patrick H. Madden, Diana Marculescu, Igor L. Markov
2019 J jnl
Proc. IEEE
Mohamed M. Sabry Aly, Tony F. Wu, Andrew Bartolo, Yash H. Malviya, William Hwang, Gage Hills, Igor L. Markov, Mary Wootters, Max M. Shulaker, H.-S. Philip Wong, Subhasish Mitra
2018 conf
ASP-DAC
Sergii Osmolovskyi, Johann Knechtel, Igor L. Markov, Jens Lienig
2018 J jnl
CoRR
Igor L. Markov, Aneeqa Fatima, Sergei V. Isakov, Sergio Boixo
2017 J jnl
CoRR
Héctor J. García, Igor L. Markov, Andrew W. Cross
2017 J jnl
CoRR
Héctor J. García, Igor L. Markov
2016 ch.
Encyclopedia of Algorithms
Andrew A. Kennings, Igor L. Markov
2016 J jnl
IEEE Micro
Trevor N. Mudge, Frederic T. Chong, Igor L. Markov, Resit Sendag, Joshua J. Yi, Derek Chiou
2015 J jnl
Computer
Mohamed M. Sabry, Mingyu Gao, Gage Hills, Chi-Shuen Lee, Greg Pitner, Max M. Shulaker, Tony F. Wu, Mehdi Asheghi, Jeffrey Bokor, Franz Franchetti, Kenneth E. Goodson, Christos Kozyrakis, Igor L. Markov, Kunle Olukotun, Larry T. Pileggi, Eric Pop, Jan M. Rabaey, Christopher Ré, H.-S. Philip Wong, Subhasish Mitra
2015 J jnl
Proc. IEEE
Igor L. Markov, Jin Hu, Myung-Chul Kim
2015 J jnl
IEEE Trans. Computers
Héctor J. García, Igor L. Markov
2015 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Stephen M. Plaza, Igor L. Markov
2014 J jnl
CoRR
Igor L. Markov
2014 J jnl
CoRR
Igor L. Markov
2014 J jnl
Nat.
Igor L. Markov
2014 J jnl
Quantum Inf. Comput.
Héctor J. García, Igor L. Markov, Andrew W. Cross
2014 A conf
ICCAD
Stephen M. Plaza, Igor L. Markov
2014 A conf
ICCAD
Michael Wang, Andrew Yates, Igor L. Markov
2013 conf
MSE
R. Iris Bahar, Alex K. Jones, Srinivas Katkoori, Patrick H. Madden, Diana Marculescu, Igor L. Markov
2013 A conf
DATE
Yida Yao, Myungbo Kim, Jianmin Li, Igor L. Markov, Farinaz Koushanfar
2013 B conf
ICTAI
Paolo Codenotti, Hadi Katebi, Karem A. Sakallah, Igor L. Markov
2013 book
Smita Krishnaswamy, Igor L. Markov, John P. Hayes
2013 J jnl
CoRR
Igor L. Markov, Mehdi Saeedi
2013 A conf
ICCAD
Hadi Katebi, Karem A. Sakallah, Igor L. Markov
2013 A conf
ICCAD
Andrew B. Kahng, Seokhyeong Kang, Hyein Lee, Igor L. Markov, Pankit Thapar
2013 book
David A. Papa, Igor L. Markov
2013 J jnl
ACM Trans. Design Autom. Electr. Syst.
Raj Rao Nadakuditi, Igor L. Markov
2013 J jnl
CoRR
Mehdi Saeedi, Igor L. Markov
2013 C conf
ICCD
Héctor J. García, Igor L. Markov
2013 J jnl
Commun. ACM
Myung-Chul Kim, Dongjin Lee, Igor L. Markov
2013 J jnl
ACM Comput. Surv.
Mehdi Saeedi, Igor L. Markov
2013 A* conf
DAC
Jin Hu, Myung-Chul Kim, Igor L. Markov
2013 C conf
ACC
Ismail Bustany, Igor L. Markov, Martin D. F. Wong
2012 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Johann Knechtel, Igor L. Markov, Jens Lienig
2012 A* conf
DAC
Myung-Chul Kim, Igor L. Markov
2012 J jnl
CoRR
Hadi Katebi, Karem A. Sakallah, Igor L. Markov
2012 B conf
LPAR
Hadi Katebi, Karem A. Sakallah, Igor L. Markov
2012 J jnl
CoRR
Igor L. Markov, Mehdi Saeedi
2012 J jnl
Quantum Inf. Comput.
Igor L. Markov, Mehdi Saeedi
2012 J jnl
CoRR
Héctor J. García, Igor L. Markov, Andrew W. Cross
2012 J jnl
CoRR
Hadi Katebi, Karem A. Sakallah, Igor L. Markov
2012 conf
Turing-100
Hadi Katebi, Karem A. Sakallah, Igor L. Markov
2012 conf
ISPD
Myung-Chul Kim, Natarajan Viswanathan, Charles J. Alpert, Igor L. Markov, Shyam Ramji
2012 A conf
ICCAD
Johann Knechtel, Igor L. Markov, Jens Lienig, Matthias Thiele
2012 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Dongjin Lee, Igor L. Markov
2012 A conf
ICCAD
Igor L. Markov, Jin Hu, Myung-Chul Kim
2012 A conf
DATE
Kai-Hui Chang, Hong-Zu Chou, Igor L. Markov
2012 conf
ARC
Tim Güneysu, Igor L. Markov, André Weimerskirch
2012 A conf
ICCAD
Jin Hu, Andrew B. Kahng, Seokhyeong Kang, Myung-Chul Kim, Igor L. Markov
2012 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Myung-Chul Kim, Dongjin Lee, Igor L. Markov
2011 A conf
ICCAD
Myung-Chul Kim, Jin Hu, Dongjin Lee, Igor L. Markov
2011 A conf
ICCAD
Igor L. Markov, Dongjin Lee
2011 conf
ISPD
Johann Knechtel, Igor L. Markov, Jens Lienig
2011 J jnl
CoRR
Fadi A. Aloul, Igor L. Markov, Arathi Ramani, Karem A. Sakallah
2011 J jnl
VLSI Design
Dongjin Lee, Igor L. Markov
2011 J jnl
Algorithmica
Igor L. Markov, Yaoyun Shi
2011 J jnl
IEEE Des. Test Comput.
Igor L. Markov
2011 J jnl
IEEE Des. Test Comput.
Igor L. Markov
2011 A conf
ICCAD
Dongjin Lee, Igor L. Markov
2011 conf
ISPD
Dongjin Lee, Igor L. Markov
2011 J jnl
IEEE Micro
David A. Papa, Charles J. Alpert, Cliff C. N. Sze, Zhuo Li, Natarajan Viswanathan, Gi-Joon Nam, Igor L. Markov
2011 J jnl
CoRR
Mehdi Saeedi, Igor L. Markov
2011 book
Andrew B. Kahng, Jens Lienig, Igor L. Markov, Jin Hu
2010 J jnl
IEEE Des. Test Comput.
Igor L. Markov
2010 conf
ISPD
Jin Hu, Jarrod A. Roy, Igor L. Markov
2010 A conf
DATE
Dongjin Lee, Igor L. Markov
2010 J jnl
Computer
Jarrod A. Roy, Farinaz Koushanfar, Igor L. Markov
2010 J jnl
Quantum Inf. Comput.
Shigeru Yamashita, Igor L. Markov
2010 conf
NANOARCH
Shigeru Yamashita, Igor L. Markov
2010 A conf
DATE
Hadi Katebi, Igor L. Markov
2010 J jnl
ACM Trans. Design Autom. Electr. Syst.
Kai-Hui Chang, Valeria Bertacco, Igor L. Markov, Alan Mishchenko
2010 A conf
ICCAD
Dongjin Lee, Myung-Chul Kim, Igor L. Markov
2010 J jnl
IEEE Des. Test Comput.
Igor L. Markov
2010 A* conf
DAC
Raj R. Nadakuditi, Igor L. Markov
2010 A conf
ICCAD
David A. Papa, Smita Krishnaswamy, Igor L. Markov
2010 A conf
ICCAD
Myung-Chul Kim, Dongjin Lee, Igor L. Markov
2010 J jnl
IEEE Des. Test Comput.
David A. Papa, Michael D. Moffitt, Charles J. Alpert, Igor L. Markov
2010 A conf
DATE
Héctor J. García, Igor L. Markov
2010 A conf
SAT
Hadi Katebi, Karem A. Sakallah, Igor L. Markov
2009 J jnl
IEEE Des. Test Comput.
Igor L. Markov
2009 A conf
ICCAD
Jarrod A. Roy, Natarajan Viswanathan, Gi-Joon Nam, Charles J. Alpert, Igor L. Markov
2009 A conf
DATE
Kai-Hui Chang, Valeria Bertacco, Igor L. Markov
2009 J jnl
Ann. Math. Artif. Intell.
Fadi A. Aloul, Arathi Ramani, Igor L. Markov, Karem A. Sakallah
2009 J jnl
CoRR
Shigeru Yamashita, Igor L. Markov
2009 book
Kai-Hui Chang, Igor L. Markov, Valeria Bertacco
2009 J jnl
CoRR
Héctor J. García, Igor L. Markov
2009 A* conf
DAC
Smita Krishnaswamy, Igor L. Markov, John P. Hayes
2009 J jnl
IEEE Des. Test Comput.
Kai-Hui Chang, David A. Papa, Igor L. Markov, Valeria Bertacco
2009 J jnl
Quantum Inf. Comput.
Vivek V. Shende, Igor L. Markov
2009 book
George F. Viamontes, Igor L. Markov, John P. Hayes
2009 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Smita Krishnaswamy, Stephen Plaza, Igor L. Markov, John P. Hayes
2009 J jnl
Integr.
Jarrod A. Roy, Aaron N. Ng, Rajat Aggarwal, Venky Ramachandran, Igor L. Markov
2008 J jnl
Computer
Kai-Hui Chang, Igor L. Markov, Valeria Bertacco
2008 conf
HOST
Jarrod A. Roy, Farinaz Koushanfar, Igor L. Markov
2008 ch.
Encyclopedia of Algorithms
Andrew A. Kennings, Igor L. Markov
2008 J jnl
ACM Trans. Design Autom. Electr. Syst.
Michael D. Moffitt, Jarrod A. Roy, Igor L. Markov, Martha E. Pollack
2008 A conf
DATE
Jarrod A. Roy, Farinaz Koushanfar, Igor L. Markov
2008 A* conf
DAC
Paul T. Darga, Karem A. Sakallah, Igor L. Markov
2008 J jnl
VLSI Design
Jarrod A. Roy, David A. Papa, Igor L. Markov
2008 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Kai-Hui Chang, Igor L. Markov, Valeria Bertacco
2008 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Jarrod A. Roy, Igor L. Markov
2008 J jnl
CoRR
Vivek V. Shende, Igor L. Markov
2008 A conf
ICCAD
Jae-sun Seo, Igor L. Markov, Dennis Sylvester, David T. Blaauw
2008 A* conf
DAC
Smita Krishnaswamy, Igor L. Markov, John P. Hayes
2008 J jnl
Quantum Inf. Comput.
Ketan N. Patel, Igor L. Markov, John P. Hayes
2008 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Stephen Plaza, Igor L. Markov, Valeria Bertacco
2008 conf
ISPD
Stephen Plaza, Igor L. Markov, Valeria Bertacco
2008 ch.
Handbook of Algorithms for Physical Design Automation
Jarrod A. Roy, Igor L. Markov
2008 J jnl
ACM Trans. Design Autom. Electr. Syst.
Smita Krishnaswamy, George F. Viamontes, Igor L. Markov, John P. Hayes
2008 A* conf
DAC
Jarrod A. Roy, Farinaz Koushanfar, Igor L. Markov
2008 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
David A. Papa, Tao Luo, Michael D. Moffitt, Chin Ngai Sze, Zhuo Li, Gi-Joon Nam, Charles J. Alpert, Igor L. Markov
2008 conf
ISPD
David A. Papa, Tao Luo, Michael D. Moffitt, Chin Ngai Sze, Zhuo Li, Gi-Joon Nam, Charles J. Alpert, Igor L. Markov
2008 A conf
DATE
Stephen Plaza, Igor L. Markov, Valeria Bertacco
2008 conf
ISPD
Kai-Hui Chang, Igor L. Markov, Valeria Bertacco
2008 J jnl
Integr.
Kai-Hui Chang, Igor L. Markov, Valeria Bertacco
2008 conf
SLIP
Jin Hu, Jarrod A. Roy, Igor L. Markov
2008 J jnl
SIAM J. Comput.
Igor L. Markov, Yaoyun Shi
2008 conf
ISPD
Michael D. Moffitt, Jarrod A. Roy, Igor L. Markov
2007 conf
HLDVT
Kai-Hui Chang, Ilya Wagner, Valeria Bertacco, Igor L. Markov
2007 A conf
ICCAD
Kai-Hui Chang, Igor L. Markov, Valeria Bertacco
2007 ch.
Modern Circuit Placement
Jarrod A. Roy, David A. Papa, Igor L. Markov
2007 J jnl
CoRR
George F. Viamontes, Igor L. Markov, John P. Hayes
2007 A conf
ICCAD
George F. Viamontes, Igor L. Markov, John P. Hayes
2007 J jnl
CoRR
Igor L. Markov, Yaoyun Shi
2007 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Jarrod A. Roy, Igor L. Markov
2007 conf
ASP-DAC
Jarrod A. Roy, Igor L. Markov
2007 A conf
ICCAD
Smita Krishnaswamy, Stephen Plaza, Igor L. Markov, John P. Hayes
2007 conf
ASP-DAC
Kai-Hui Chang, Igor L. Markov, Valeria Bertacco
2007 A conf
ICCAD
Jarrod A. Roy, Igor L. Markov
2007 ch.
Handbook of Approximation Algorithms and Metaheuristics
David A. Papa, Igor L. Markov
2007 conf
ISQED
Kai-Hui Chang, David A. Papa, Igor L. Markov, Valeria Bertacco
2007 conf
ASP-DAC
Stephen Plaza, Kai-Hui Chang, Igor L. Markov, Valeria Bertacco
2007 J jnl
ACM Trans. Design Autom. Electr. Syst.
Kai-Hui Chang, Igor L. Markov, Valeria Bertacco
2007 conf
ASP-DAC
Kai-Hui Chang, Igor L. Markov, Valeria Bertacco
2007 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Jarrod A. Roy, Igor L. Markov
2007 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Kai-Hui Chang, Valeria Bertacco, Igor L. Markov
2007 J jnl
IEEE Trans. Computers
Fadi A. Aloul, Arathi Ramani, Karem A. Sakallah, Igor L. Markov
2007 J jnl
Integr.
Igor L. Markov, Louis Scheffer, Dirk Stroobandt
2007 J jnl
ACM J. Exp. Algorithmics
Fadi A. Aloul, Arathi Ramani, Igor L. Markov, Karem A. Sakallah
2007 J jnl
IEEE Des. Test Comput.
Smita Krishnaswamy, Igor L. Markov, John P. Hayes
2006 J jnl
Computer
Krysta M. Svore, Alfred V. Aho, Andrew W. Cross, Isaac L. Chuang, Igor L. Markov
2006 J jnl
J. Artif. Intell. Res.
Arathi Ramani, Igor L. Markov, Karem A. Sakallah, Fadi A. Aloul
2006 A* conf
DAC
Michael D. Moffitt, Aaron N. Ng, Igor L. Markov, Martha E. Pollack
2006 J jnl
ACM J. Emerg. Technol. Comput. Syst.
Aditya K. Prasad, Vivek V. Shende, Igor L. Markov, John P. Hayes, Ketan N. Patel
2006 J jnl
IEEE Trans. Computers
Fadi A. Aloul, Karem A. Sakallah, Igor L. Markov
2006 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Jarrod A. Roy, Saurabh N. Adya, David A. Papa, Igor L. Markov
2006 J jnl
Integr.
Saurabh N. Adya, Igor L. Markov, Paul G. Villarrubia
2006 B conf
ETS
Ramashis Das, Igor L. Markov, John P. Hayes
2006 conf
ISPD
Jarrod A. Roy, David A. Papa, Aaron N. Ng, Igor L. Markov
2006 conf
ISPD
Jarrod A. Roy, James F. Lu, Igor L. Markov
2006 conf
ISPD
Aaron N. Ng, Igor L. Markov, Rajat Aggarwal, Venky Ramachandran
2006 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Vivek V. Shende, Stephen S. Bullock, Igor L. Markov
2006 conf
ASP-DAC
David A. Papa, Igor L. Markov, Philip Chong
2005 A conf
DATE
Smita Krishnaswamy, George F. Viamontes, Igor L. Markov, John P. Hayes
2005 conf
ISPD
Hayward H. Chan, Saurabh N. Adya, Igor L. Markov
2005 conf
ISPD
Jarrod A. Roy, David A. Papa, Saurabh N. Adya, Hayward H. Chan, Aaron N. Ng, James F. Lu, Igor L. Markov
2005 J jnl
ACM Trans. Design Autom. Electr. Syst.
Saurabh N. Adya, Igor L. Markov
2005 conf
ASP-DAC
Fadi A. Aloul, Arathi Ramani, Igor L. Markov, Karem A. Sakallah
2005 conf
ISPD
Zhong Xiu, David A. Papa, Philip Chong, Christoph Albrecht, Andreas Kuehlmann, Rob A. Rutenbar, Igor L. Markov
2005 J jnl
Quantum Inf. Comput.
George F. Viamontes, Igor L. Markov, John P. Hayes
2005 J jnl
Comput. Sci. Eng.
George F. Viamontes, Igor L. Markov, John P. Hayes
2005 B conf
ETS
Smita Krishnaswamy, Igor L. Markov, John P. Hayes
2005 A conf
ICCAD
Kai-Hui Chang, Igor L. Markov, Valeria Bertacco
2005 J jnl
Quantum Inf. Comput.
Vivek V. Shende, Igor L. Markov
2005 J jnl
Ann. Math. Artif. Intell.
DoRon B. Motter, Jarrod A. Roy, Igor L. Markov
2005 A conf
ICCAD
Kai-Hui Chang, Valeria Bertacco, Igor L. Markov
2005 conf
ASP-DAC
Vivek V. Shende, Stephen S. Bullock, Igor L. Markov
2005 ed.
SLIP
Igor L. Markov, Mike Hutton
2005 conf
ISQED
Aaron N. Ng, Igor L. Markov
2005 A conf
DATE
Igor L. Markov, Dmitri Maslov
2004 A* conf
DAC
Yoonna Oh, Maher N. Mneimneh, Zaher S. Andraus, Karem A. Sakallah, Igor L. Markov
2004 J jnl
Quantum Inf. Comput.
Stephen S. Bullock, Igor L. Markov
2004 conf
CSCLP
Arathi Ramani, Igor L. Markov
2004 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Saurabh N. Adya, Mehmet Can Yildiz, Igor L. Markov, Paul Villarrubia, Phiroze N. Parakh, Patrick H. Madden
2004 A conf
DATE
Andrew B. Kahng, Igor L. Markov, Sherief Reda
2004 A conf
DATE
Arathi Ramani, Fadi A. Aloul, Igor L. Markov, Karem A. Sakallah
2004 conf
ACM Great Lakes Symposium on VLSI
David A. Papa, Saurabh N. Adya, Igor L. Markov
2004 J jnl
IEEE Trans. Very Large Scale Integr. Syst.
Ketan N. Patel, Igor L. Markov
2004 A* conf
DAC
Paul T. Darga, Mark H. Liffiton, Karem A. Sakallah, Igor L. Markov
2004 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Ketan N. Patel, John P. Hayes, Igor L. Markov
2004 A conf
DATE
George F. Viamontes, Igor L. Markov, John P. Hayes
2004 J jnl
J. Univers. Comput. Sci.
Fadi A. Aloul, Igor L. Markov, Karem A. Sakallah
2004 conf
ACM Great Lakes Symposium on VLSI
Andrew B. Kahng, Igor L. Markov, Sherief Reda
2004 conf
ACM Great Lakes Symposium on VLSI
Hayward H. Chan, Igor L. Markov
2004 conf
ASP-DAC
Fadi A. Aloul, Arathi Ramani, Igor L. Markov, Karem A. Sakallah
2004 A conf
DATE
Vivek V. Shende, Igor L. Markov, Stephen S. Bullock
2004 ed.
SLIP
Louis Scheffer, Igor L. Markov
2004 A conf
ICCAD
Saurabh N. Adya, S. Chaturvedi, Jarrod A. Roy, David A. Papa, Igor L. Markov
2003 A* conf
DAC
Stephen S. Bullock, Igor L. Markov
2003 conf
ISPD
Saurabh N. Adya, Mehmet Can Yildiz, Igor L. Markov, Paul Villarrubia, Phiroze N. Parakh, Patrick H. Madden
2003 A* conf
IJCAI
Arathi Ramani, Igor L. Markov
2003 A* conf
IJCAI
Fadi A. Aloul, Karem A. Sakallah, Igor L. Markov
2003 conf
SLIP
Ketan N. Patel, Igor L. Markov
2003 conf
ACM Great Lakes Symposium on VLSI
Fadi A. Aloul, Igor L. Markov, Karem A. Sakallah
2003 Misc conf
VTS
Ketan N. Patel, John P. Hayes, Igor L. Markov
2003 J jnl
IEEE Trans. Very Large Scale Integr. Syst.
Saurabh N. Adya, Igor L. Markov
2003 conf
ASP-DAC
George F. Viamontes, Manoj Rajagopalan, Igor L. Markov, John P. Hayes
2003 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Andrew E. Caldwell, Andrew B. Kahng, Igor L. Markov
2003 conf
ISQED
Andrew B. Kahng, Igor L. Markov
2003 J jnl
IEEE Trans. Very Large Scale Integr. Syst.
Yu Cao, Chenming Hu, Xuejue Huang, Andrew B. Kahng, Igor L. Markov, Michael Oliver, Dirk Stroobandt, Dennis Sylvester
2003 J jnl
Quantum Inf. Process.
George F. Viamontes, Igor L. Markov, John P. Hayes
2003 A conf
ICCAD
Saurabh N. Adya, Igor L. Markov, Paul Villarrubia
2003 A* conf
DAC
Fadi A. Aloul, Igor L. Markov, Karem A. Sakallah
2003 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Fadi A. Aloul, Arathi Ramani, Igor L. Markov, Karem A. Sakallah
2003 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Vivek V. Shende, Aditya K. Prasad, Igor L. Markov, John P. Hayes
2002 A conf
ALENEX
DoRon B. Motter, Igor L. Markov
2002 conf
ISPD
Saurabh N. Adya, Igor L. Markov
2002 conf
IWLS
Fadi A. Aloul, Igor L. Markov, Karem A. Sakallah
2002 A conf
ICCAD
Fadi A. Aloul, Arathi Ramani, Igor L. Markov, Karem A. Sakallah
2002 C conf
ICCD
Fadi A. Aloul, Igor L. Markov, Karem A. Sakallah
2002 conf
ISPD
Andrew B. Kahng, Stefanus Mantik, Igor L. Markov
2002 conf
IWLS
DoRon B. Motter, Igor L. Markov
2002 conf
IWLS
Vivek V. Shende, Aditya K. Prasad, Igor L. Markov, John P. Hayes
2002 A conf
ICCAD
Vivek V. Shende, Aditya K. Prasad, Igor L. Markov, John P. Hayes
2002 A* conf
DAC
Fadi A. Aloul, Arathi Ramani, Igor L. Markov, Karem A. Sakallah
2002 J jnl
IEEE Des. Test Comput.
Andrew E. Caldwell, Igor L. Markov
2001 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Andrew B. Kahng, John C. Lach, William H. Mangione-Smith, Stefanus Mantik, Igor L. Markov, Miodrag Potkonjak, Paul Tucker, Huijuan Wang, Gregory Wolfe
2001 A conf
ICCAD
Fadi A. Aloul, Igor L. Markov, Karem A. Sakallah
2001 C conf
ICCD
Saurabh N. Adya, Igor L. Markov
2000 conf
ASP-DAC
Andrew A. Kennings, Igor L. Markov
2000 A* conf
DAC
Andrew E. Caldwell, Andrew B. Kahng, Igor L. Markov
2000 J jnl
ACM J. Exp. Algorithmics
Andrew E. Caldwell, Andrew B. Kahng, Igor L. Markov
2000 A* conf
DAC
Andrew E. Caldwell, Yu Cao, Andrew B. Kahng, Farinaz Koushanfar, Hua Lu, Igor L. Markov, Michael Oliver, Dirk Stroobandt, Dennis Sylvester
2000 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Charles J. Alpert, Andrew E. Caldwell, Andrew B. Kahng, Igor L. Markov
2000 conf
ASP-DAC
Andrew E. Caldwell, Andrew B. Kahng, Igor L. Markov
2000 J jnl
VLSI Design
Andrew E. Caldwell, Andrew B. Kahng, Igor L. Markov
2000 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Andrew E. Caldwell, Andrew B. Kahng, Igor L. Markov
2000 A* conf
DAC
Olivier Coudert, Igor L. Markov, Christoph Meinel, Ellen Sentovich
1999 J jnl
VLSI Design
Charles J. Alpert, Andrew E. Caldwell, Tony F. Chan, Dennis J.-H. Huang, Andrew B. Kahng, Igor L. Markov, M. S. Moroz
1999 A conf
ALENEX
Andrew E. Caldwell, Andrew B. Kahng, Igor L. Markov
1999 conf
ASP-DAC
Ross Baldick, Andrew B. Kahng, Andrew A. Kennings, Igor L. Markov
1999 A* conf
DAC
Andrew E. Caldwell, Andrew B. Kahng, Andrew A. Kennings, Igor L. Markov
1999 A* conf
DAC
Andrew E. Caldwell, Andrew B. Kahng, Igor L. Markov
1999 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Andrew E. Caldwell, Andrew B. Kahng, Stefanus Mantik, Igor L. Markov, Alexander Zelikovsky
1999 conf
ISPD
Andrew E. Caldwell, Andrew B. Kahng, Igor L. Markov
1999 conf
ISPD
Charles J. Alpert, Andrew E. Caldwell, Andrew B. Kahng, Igor L. Markov
1998 J jnl
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
Charles J. Alpert, Tony F. Chan, Andrew B. Kahng, Igor L. Markov, Pep Mulet
1998 conf
ISPD
Andrew E. Caldwell, Andrew B. Kahng, Stefanus Mantik, Igor L. Markov, Alexander Zelikovsky
1998 A* conf
DAC
Andrew B. Kahng, Stefanus Mantik, Igor L. Markov, Miodrag Potkonjak, Paul Tucker, Huijuan Wang, Gregory Wolfe
1998 A* conf
DAC
Andrew B. Kahng, John C. Lach, William H. Mangione-Smith, Stefanus Mantik, Igor L. Markov, Miodrag Potkonjak, Paul Tucker, Huijuan Wang, Gregory Wolfe
1997 conf
ISPD
Charles J. Alpert, Tony F. Chan, Dennis J.-H. Huang, Andrew B. Kahng, Igor L. Markov, Pep Mulet, Kenneth Yan
1997 A* conf
DAC
Charles J. Alpert, Tony F. Chan, Dennis J.-H. Huang, Igor L. Markov, Kenneth Yan
tests/unit/conftest_binja_stubs.py
← Index tests/unit/conftest_binja_stubs.py python
"""Stubs for binaryninja module so decompiler unit tests can import
without a Binary Ninja license."""

import sys
from unittest.mock import MagicMock
from enum import IntEnum


# Stub binaryninja.enums
class BranchType(IntEnum):
    UnconditionalBranch = 0
    FalseBranch = 1
    TrueBranch = 2
    CallDestination = 3
    FunctionReturn = 4
    SystemCall = 5
    IndirectBranch = 6
    ExceptionBranch = 7
    UnresolvedBranch = 8
    UserDefinedBranch = 9


class InstructionTextTokenType(IntEnum):
    TextToken = 0
    InstructionToken = 1
    RegisterToken = 2
    IntegerToken = 3
    PossibleAddressToken = 4
    BeginMemoryOperandToken = 10
    EndMemoryOperandToken = 11
    FloatingPointToken = 12
    AnnotationToken = 13
    CodeRelativeAddressToken = 14
    ArgumentNameToken = 15
    HexDumpByteValueToken = 16
    HexDumpSkippedByteToken = 17
    HexDumpInvalidByteToken = 18
    HexDumpTextToken = 19
    OpcodeToken = 20
    StringToken = 21
    CharacterConstantToken = 22
    KeywordToken = 23
    TypeNameToken = 24
    FieldNameToken = 25
    NameSpaceToken = 26
    NameSpaceSeparatorToken = 27
    TagToken = 28
    StructOffsetToken = 29
    StructOffsetByteValueToken = 30
    StructureHexDumpTextToken = 31
    GotoLabelToken = 32
    CommentToken = 33
    PossibleValueToken = 34
    PossibleValueTypeToken = 35
    ArrayIndexToken = 36
    IndentationToken = 37
    UnknownMemoryToken = 38
    EnumerationMemberToken = 39
    OperationToken = 40
    BaseStructureOffsetToken = 41
    BaseStructureSeparatorToken = 42
    BraceToken = 43
    PlainTextToken = 44
    CollapsedInformationToken = 45


class SymbolType(IntEnum):
    FunctionSymbol = 0
    ImportAddressSymbol = 1
    ImportedFunctionSymbol = 2
    DataSymbol = 3
    ImportedDataSymbol = 4
    ExternalSymbol = 5
    LibraryFunctionSymbol = 6
    SymbolicFunctionSymbol = 7
    LocalLabelSymbol = 8


class HighLevelILOperation(IntEnum):
    HLIL_NOP = 0
    HLIL_ADD = 1
    HLIL_SUB = 2
    HLIL_MUL = 3
    HLIL_DIVS = 4
    HLIL_NEG = 5
    HLIL_NOT = 6
    HLIL_AND = 7
    HLIL_OR = 8
    HLIL_XOR = 9
    HLIL_LSR = 10
    HLIL_LSL = 11
    HLIL_MODS = 12
    HLIL_IF = 13
    HLIL_GOTO = 14
    HLIL_RET = 15
    HLIL_ASSIGN = 16
    HLIL_CALL = 17
    HLIL_VAR = 18
    HLIL_CONST = 19
    HLIL_BLOCK = 20


class LowLevelILOperation(IntEnum):
    LLIL_NOP = 0
    LLIL_SET_REG = 1
    LLIL_SET_REG_SPLIT = 2
    LLIL_SET_FLAG = 3
    LLIL_LOAD = 4
    LLIL_STORE = 5
    LLIL_PUSH = 6
    LLIL_POP = 7
    LLIL_REG = 8
    LLIL_CONST = 9
    LLIL_CONST_PTR = 10
    LLIL_FLAG = 11
    LLIL_FLAG_BIT = 12
    LLIL_ADD = 13
    LLIL_ADC = 14
    LLIL_SUB = 15
    LLIL_SBB = 16
    LLIL_AND = 17
    LLIL_OR = 18
    LLIL_XOR = 19
    LLIL_LSL = 20
    LLIL_LSR = 21
    LLIL_ASR = 22
    LLIL_ROL = 23
    LLIL_RLC = 24
    LLIL_ROR = 25
    LLIL_RRC = 26
    LLIL_MUL = 27
    LLIL_MULU_DP = 28
    LLIL_MULS_DP = 29
    LLIL_DIVU = 30
    LLIL_DIVU_DP = 31
    LLIL_DIVS = 32
    LLIL_DIVS_DP = 33
    LLIL_MODU = 34
    LLIL_MODS = 35
    LLIL_NEG = 36
    LLIL_NOT = 37
    LLIL_SX = 38
    LLIL_ZX = 39
    LLIL_LOW_PART = 40
    LLIL_JUMP = 41
    LLIL_JUMP_TO = 42
    LLIL_CALL = 43
    LLIL_CALL_SSA = 44
    LLIL_RET = 45
    LLIL_NORET = 46
    LLIL_IF = 47
    LLIL_GOTO = 48
    LLIL_FLAG_COND = 49
    LLIL_CMP_E = 50
    LLIL_CMP_NE = 51
    LLIL_CMP_SLT = 52
    LLIL_CMP_ULT = 53
    LLIL_CMP_SLE = 54
    LLIL_CMP_ULE = 55
    LLIL_CMP_SGE = 56
    LLIL_CMP_UGE = 57
    LLIL_CMP_SGT = 58
    LLIL_CMP_UGT = 59
    LLIL_TEST_BIT = 60
    LLIL_BOOL_TO_INT = 61
    LLIL_TAILCALL = 62
    LLIL_SYSCALL = 63
    LLIL_BP = 64
    LLIL_TRAP = 65
    LLIL_UNDEF = 66
    LLIL_UNIMPL = 67
    LLIL_UNIMPL_MEM = 68


class AnalysisState(IntEnum):
    IdleState = 0
    DisassembleState = 1
    AnalyzeState = 2


def install_binja_stubs():
    """Install binaryninja module stubs into sys.modules.
    Call this BEFORE importing any decompiler modules.
    Idempotent — returns the existing mock if already installed.
    """
    if "binaryninja" in sys.modules and not isinstance(sys.modules["binaryninja"], MagicMock):
        return sys.modules["binaryninja"]
    if "binaryninja" in sys.modules and hasattr(sys.modules["binaryninja"], "_redb_stub"):
        return sys.modules["binaryninja"]

    # Create the main mock
    bn_mock = MagicMock()
    bn_mock._redb_stub = True

    # Wire up enums as real enums (not mocks)
    enums_mod = MagicMock()
    enums_mod.BranchType = BranchType
    enums_mod.InstructionTextTokenType = InstructionTextTokenType
    enums_mod.SymbolType = SymbolType
    enums_mod.HighLevelILOperation = HighLevelILOperation
    enums_mod.LowLevelILOperation = LowLevelILOperation
    enums_mod.AnalysisState = AnalysisState

    bn_mock.enums = enums_mod
    bn_mock.enums.BranchType = BranchType
    bn_mock.enums.InstructionTextTokenType = InstructionTextTokenType
    bn_mock.enums.SymbolType = SymbolType
    bn_mock.enums.HighLevelILOperation = HighLevelILOperation
    bn_mock.enums.LowLevelILOperation = LowLevelILOperation
    bn_mock.enums.AnalysisState = AnalysisState

    # LowLevelILOperation on the top-level module
    bn_mock.LowLevelILOperation = LowLevelILOperation
    bn_mock.LowLevelILInstruction = MagicMock

    # highlevelil sub-module
    hlil_mod = MagicMock()
    hlil_mod.HighLevelILInstruction = type("HighLevelILInstruction", (), {})
    bn_mock.highlevelil = hlil_mod

    # lowlevelil sub-module
    llil_mod = MagicMock()
    llil_mod.LowLevelILAdd = type("LowLevelILAdd", (), {})
    llil_mod.LowLevelILConst = type("LowLevelILConst", (), {})
    llil_mod.LowLevelILConstPtr = type("LowLevelILConstPtr", (), {})
    llil_mod.LowLevelILLoad = type("LowLevelILLoad", (), {})
    llil_mod.LowLevelILLsl = type("LowLevelILLsl", (), {})
    llil_mod.LowLevelILMul = type("LowLevelILMul", (), {})
    llil_mod.LowLevelILPop = type("LowLevelILPop", (), {})
    llil_mod.LowLevelILPush = type("LowLevelILPush", (), {})
    llil_mod.LowLevelILReg = type("LowLevelILReg", (), {})
    llil_mod.LowLevelILStore = type("LowLevelILStore", (), {})
    llil_mod.LowLevelILSub = type("LowLevelILSub", (), {})
    bn_mock.lowlevelil = llil_mod

    # mediumlevelil sub-module
    mlil_mod = MagicMock()
    mlil_mod.MediumLevelILConst = type("MediumLevelILConst", (), {})
    mlil_mod.MediumLevelILConstPtr = type("MediumLevelILConstPtr", (), {})
    bn_mock.mediumlevelil = mlil_mod

    sys.modules["binaryninja"] = bn_mock
    sys.modules["binaryninja.enums"] = enums_mod
    sys.modules["binaryninja.lowlevelil"] = llil_mod
    sys.modules["binaryninja.highlevelil"] = hlil_mod
    sys.modules["binaryninja.mediumlevelil"] = mlil_mod

    return bn_mock


# ============================================================================
# Mock Factories
# ============================================================================

class MockToken:
    """Mock for instruction text tokens."""
    def __init__(self, text, token_type=None):
        self.text = text
        if token_type is None:
            self.type = InstructionTextTokenType.TextToken
        else:
            self.type = token_type

    def __str__(self):
        return self.text


class MockDisassemblyLine:
    """Mock for a disassembly text line."""
    def __init__(self, tokens=None):
        self.tokens = tokens or []

    def __str__(self):
        return "".join(t.text for t in self.tokens)


class MockEdge:
    """Mock for a basic block edge."""
    def __init__(self, source=None, target=None, edge_type=None):
        self.source = source
        self.target = target
        self.type = edge_type


class MockBasicBlock:
    """Mock for a basic block."""
    def __init__(
        self,
        start=0,
        end=0,
        disassembly_text=None,
        outgoing_edges=None,
        incoming_edges=None,
        dominators=None,
        post_dominators=None,
        dominance_frontier=None,
        dominator_tree_children=None,
        instruction_count=None,
    ):
        self.start = start
        self.end = end
        self.disassembly_text = disassembly_text or []
        self.outgoing_edges = outgoing_edges or []
        self.incoming_edges = incoming_edges or []
        self.dominators = dominators if dominators is not None else [self]
        self.post_dominators = post_dominators if post_dominators is not None else [self]
        self.dominance_frontier = dominance_frontier if dominance_frontier is not None else set()
        self.dominator_tree_children = dominator_tree_children or []
        self.instruction_count = instruction_count if instruction_count is not None else len(self.disassembly_text)

    def __iter__(self):
        return iter(self.disassembly_text)


class MockFunction:
    """Mock for a Binary Ninja function."""
    def __init__(
        self,
        name="sub_1000",
        start=0x1000,
        basic_blocks=None,
        instructions=None,
        hlil=None,
        llil=None,
        mlil=None,
        symbol=None,
        is_thunk=False,
        stack_adjustment=0,
        call_sites=None,
        caller_sites=None,
        low_level_il=None,
    ):
        self.name = name
        self.start = start
        self.basic_blocks = basic_blocks or []
        self._instructions = instructions or []
        self.hlil = hlil
        self.llil = llil
        self.mlil = mlil
        self.symbol = symbol
        self.is_thunk = is_thunk
        self.stack_adjustment = stack_adjustment
        self.call_sites = call_sites or []
        self.caller_sites = caller_sites or []
        self.low_level_il = low_level_il

    @property
    def instructions(self):
        return iter(self._instructions)

    def get_basic_block_at(self, addr):
        for bb in self.basic_blocks:
            if bb.start <= addr < bb.end or bb.start == addr:
                return bb
        return self.basic_blocks[0] if self.basic_blocks else None

    def get_regs_read_by(self, addr, arch):
        return []

    def get_regs_written_by(self, addr, arch):
        return []

    def __str__(self):
        return f"uint64_t {self.name}()"


class MockBinaryView:
    """Mock for a Binary Ninja binary view."""
    def __init__(
        self,
        functions=None,
        strings=None,
        arch=None,
    ):
        self.functions = functions or []
        self.strings = strings or []
        self.arch = arch

    def get_segment_at(self, addr):
        return None

    def get_section_at(self, addr):
        return None

    def get_symbol_at(self, addr):
        return None

    def get_functions_at(self, addr):
        return []

    def get_string_at(self, addr):
        return None

    def get_data_var_at(self, addr):
        return None


class MockSymbol:
    """Mock for a Binary Ninja symbol."""
    def __init__(self, symbol_type=None, name="unknown"):
        self.type = symbol_type if symbol_type is not None else SymbolType.FunctionSymbol
        self.name = name
        self.full_name = name


class MockILInstruction:
    """Mock for an IL instruction (LLIL/HLIL)."""
    def __init__(self, operation, operands=None, address=0):
        self.operation = operation
        self.operands = operands or []
        self.address = address


class MockStringEntry:
    """Mock for a Binary Ninja string reference."""
    def __init__(self, value, raw=None, start=0, length=0, string_type=None):
        self.value = value
        self.raw = raw if raw is not None else value.encode("utf-8") if isinstance(value, str) else value
        self.start = start
        self.length = length if length else len(self.raw)
        self.type = string_type or MockStringType("Utf8String")


class MockStringType:
    """Mock for string type."""
    def __init__(self, name="Utf8String"):
        self.name = name