I used to use Spartan 3's a lot. It's now ten years old. There were issues with the internal power distribution in the chip, and it would glitch if too many gates were switching. At 8 bits you should get decent results by just using the + operator in VHDL or Verilog, and then setting a timing requirement on the signal path.
If you build your own full carry lookahead adder, you will still have to set a timing requirement to get the synthesis to optimize it.
The timing requirements are set in the constraints file (ucf). The name of the tool that edits this file depends on the version of the Xilinx tools you are using. If you are using ISE, just double click on the ucf file in the files window.