The carry flag gets set in the normal way, e.g. as the result of an addition which generates a carry. You can then use an ADC
(add with carry) instruction to propagate this carry into a high order word, e.g. when doing a 64 bit add:
ADDS r4, r0, r2 ; add least significant words
ADC r5, r1, r3 ; add most significant words with carry
In this example the 64 bit value in r4:r5 is equal to the sum of the 64-bit values in r0:r1 and r2:r3.
On early versions of ARM you could set the carry flag explicitly like this:
ORRS R15,R15,#&20000000
or like this:
TEQP R15,#&20000000
See this tutorial for more info: http://www.peter-cockerell.net/aalp/html/ch-3.html
Apparently newer versions of ARM have moved the carry flag to a different register (see comments below).