Initial implementation of PIC16 Cloner pass.
authorSanjiv Gupta <sanjiv.gupta@microchip.com>
Wed, 17 Feb 2010 01:11:53 +0000 (01:11 +0000)
committerSanjiv Gupta <sanjiv.gupta@microchip.com>
Wed, 17 Feb 2010 01:11:53 +0000 (01:11 +0000)
commite74c3bae3aa6ea5add53afed4181d4da5a7eee18
tree51052df3dd9d6668a478a6b68ca3adb320a32812
parent2a5431e0042a534a795ab4ec14dd7cc03493a099
Initial implementation of PIC16 Cloner pass.

This pass is supposed to be run on the linked .bc module.
It traveses the module call graph twice. Once starting from the main function
and marking each reached function as "ML". Again, starting from the ISR
and cloning any reachable function that was marked as "ML". After cloning
the function, it remaps all the call sites in IL functions to call the
cloned functions.

Currently only marking is being done.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96435 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/PIC16/PIC16Passes/PIC16Cloner.cpp [new file with mode: 0644]
lib/Target/PIC16/PIC16Passes/PIC16Cloner.h [new file with mode: 0644]