This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hi, The mail server didn't let me to send the patch in clear, thus I needed to compress it. Sorry for the large patch, but it mainly changes a number of instruction attributes. Here it is the original message: The loop count register (LP_COUNT) is used for zero delay loops. We should not use LP_COUNT as a general purpose register because LP_COUNT maybe decremented if the program counter equals the loop end addresses. We should also not use the LP_COUNT register as the destination of multi-cycle instruction, including multicycle extension instructions. A multi-cycle instruction writing to the LP_COUNT register raises an Illegal Instruction exception. The following instructions are considered as multi-cycle instructions: - Load operations - LR instructions - Multiply and Divide instructions - Multi-cycle non-blocking extension instructions This proposed patch adds extra LP_COUNT checks for selected instructions, and improves the error reporting of our assembler. The patch is tested for LE/BE systems with ARC6xx, ARC7xx or ARCv2 cpu variations. OK to apply? Claudiu
Attachment:
Add-checking-for-LP_COUNT-reg.tar.gz
Description: Add-checking-for-LP_COUNT-reg.tar.gz
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |