This llvm version include the code for the tool of power profiling from  "Compiler-Directed Power Management for Superscalars" TACO paper by Jawad Haj-Yihia et al.  - To use the tool (pass) you need to compile the llvm source directory (root directory) - List of changes made to the original LLVM repository can be could at files_update file - For the algorithm descritpion , please refer to the "Compiler-Directed Power Management for Superscalars"   TACO paper by Jawad Haj-Yihia et al. - The tool is working as MachineFunctionPass, it operates on backend at late-machine-code-optimizations    which is after instruction selection, schedualing, register allocation, ... - After compiling the llvm version you need to add the command line options to the llc tool to activate the    MachineFunctionPass. - add to llc the following argumants      "power-limit"  power limit for the power events handling optimization     "power-instruction-window" the instruction window where we check the power events