A method of processing a program written in a general purpose programming
language to determine a hardware representation of the program can
include generating a language independent model of the program written in
a general purpose programming language (100) and identifying a loop
construct within the language independent model (705). A determination
can be made as to whether the loop construct is bounded (725). If so, a
loop processing technique can be selected for unrolling the loop
construct according to stored user preferences 735). The loop construct
can be replicated in the language independent model as specified by the
selected loop processing technique (740, 755).