[LLVMdev] Marking implicit registers as "trashed"
Martin J. O'Riordan
Martin.ORiordan at Movidius.com
Mon Dec 22 07:44:53 PST 2014
I am working on some optimizations for our VLIW processor; one ALU performs
32-bit operations, while another performs 8-, 16- or 32-bit operations.
Sometimes it is useful for the 32-bit ALU to perform 8- or 16-bit operations
such as ADD, SUB, SHL, AND, etc. that are not dependent on the additional
24-bits, but because it is 32-bit ALU, the condition codes are updated.
When this is being used to offload the 8- and 16-bit arithmetic, the actual
outcome of these condition codes is irrelevant, and it is important that
later operations do not make conditional or predicated decisions based on
The 'Uses = [...]' and 'Defs = [...]', but I would like something like
'Trash = [...]' to say that the register is changed, but the change is
Does anyone have any suggestions as to how I should approach this kind of
Martin O'Riordan, Movidius Ltd.
More information about the llvm-dev