Compile Time Aanalysis For Hardware Transactional Memory Architectures