summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.target/microblaze
diff options
context:
space:
mode:
authoreager <eager@138bc75d-0d04-0410-961f-82ee72b054a4>2014-05-17 15:12:38 +0000
committereager <eager@138bc75d-0d04-0410-961f-82ee72b054a4>2014-05-17 15:12:38 +0000
commit0f718e59b1cffee9e7ac04fdd0be3725f072c61c (patch)
treeb594c0ab7cce86755578cc61bfda61439424797a /gcc/testsuite/gcc.target/microblaze
parente0b7b952168ac1106771da549cf11878d0391f57 (diff)
downloadgcc-0f718e59b1cffee9e7ac04fdd0be3725f072c61c.tar.gz
ChangeLog:
2014-05-17 Ajit Agarwal <ajitkum@xilinx.com> * config/microblaze/microblaze.c (break_handler): New Declaration. (microblaze_break_function_p,microblaze_is_break_handler) : New functions. (compute_frame_size): use of microblaze_break_function_p. Add the test of break_handler. (microblaze_function_prologue) : Add the test of variable break_handler. Check the fnname by BREAK_HANDLER_NAME. (microblaze_function_epilogue) : Add the test of break_handler. (microblaze_globalize_label) : Add the test of break_handler. Check the name by BREAK_HANDLER_NAME. * config/microblaze/microblaze.h (BREAK_HANDLER_NAME) : New macro * config/microblaze/microblaze.md : (*<optab>,<optab>_internal): Add microblaze_is_break_handler () test. (call_internal1,call_value_intern) : Use of microblaze_break_function_p. Use of SYMBOL_REF_DECL. * config/microblaze/microblaze-protos.h (microblaze_break_function_p,microblaze_is_break_handler) : New Declaration. * testsuite/gcc.target/microblaze/others/break_handler.c : New. * doc/extend.texi( MicroBlaze break_handler Functions): Document new MicroBlaze break_handler functions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210559 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/gcc.target/microblaze')
-rw-r--r--gcc/testsuite/gcc.target/microblaze/others/break_handler.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.target/microblaze/others/break_handler.c b/gcc/testsuite/gcc.target/microblaze/others/break_handler.c
new file mode 100644
index 00000000000..1ccafd06408
--- /dev/null
+++ b/gcc/testsuite/gcc.target/microblaze/others/break_handler.c
@@ -0,0 +1,15 @@
+int func () __attribute__ ((break_handler));
+volatile int intr_occurred;
+
+int func ()
+{
+
+ /* { dg-final { scan-assembler "rtbd\tr(\[0-9]\|\[1-2]\[0-9]\|3\[0-1]),8" } } */
+ intr_occurred += 1;
+}
+int main()
+{
+ /* { dg-final { scan-assembler "brki\tr16" } } */
+ func();
+ return 0;
+}