The SRL primitive can be used to reduce resources used in a design.Instead of implementing a shift register using a series of flip-flops, you can implement a shift register in the dedicated performance optimized SRL blocks in fabric.However, in order to use an SRL in your design, you must be careful how you use resets.
Resets should not be used on shift registers in your design as this requires additional logic around the SRL block which reduces performance and increases the amount of logic needed to implement the shift register.
For more information on using SRLs in your design, see the section on SRLs in the
HDL Coding Practices to Accelerate Design Performance White Paper (WP231):
http://www.xilinx.com/support/documentation/white_papers/wp231.pdf