1. Time borrowing needs to be enabled by the user .libs have no information about time borrowing. The tool understands the a latch based design and if time borrowing is enabled then it will optimize the design accordingly depending on the combo logic between the two latches
2. Yes time borrowing can be implemented for ICGs as well.