summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwalt <walt@138bc75d-0d04-0410-961f-82ee72b054a4>2016-11-23 04:35:43 +0000
committerwalt <walt@138bc75d-0d04-0410-961f-82ee72b054a4>2016-11-23 04:35:43 +0000
commit9cfc4d219599b684d71def19bcee0ebf1b96c89c (patch)
tree70d1d31937de90d886833b445dd0013b11f775af
parent6e14fa90a362c05d3ace73d0032c3948818361f3 (diff)
downloadgcc-9cfc4d219599b684d71def19bcee0ebf1b96c89c.tar.gz
TILEPro/TILE-Gx: add trap patterns
* config/tilegx/tilegx.md (trap): New pattern. * config/tilepro/tilepro.md (trap): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@242735 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/tilegx/tilegx.md6
-rw-r--r--gcc/config/tilepro/tilepro.md6
3 files changed, 17 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a7a776e70e1..97320c769ad 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2016-11-22 Walter Lee <walt@tilera.com>
+ * config/tilegx/tilegx.md (trap): New pattern.
+ * config/tilepro/tilepro.md (trap): Likewise.
+
+2016-11-22 Walter Lee <walt@tilera.com>
+
* config/tilegx/tilegx.md (*zero_extract): Use
define_insn_and_split instead of define_insn; Handle pos + size >
64.
diff --git a/gcc/config/tilegx/tilegx.md b/gcc/config/tilegx/tilegx.md
index 3ad5a873b1f..eccdd28941d 100644
--- a/gcc/config/tilegx/tilegx.md
+++ b/gcc/config/tilegx/tilegx.md
@@ -2773,6 +2773,12 @@
"nop"
[(set_attr "type" "Y01")])
+(define_insn "trap"
+ [(trap_if (const_int 1) (const_int 0))]
+ ""
+ "raise; moveli zero, 6"
+ [(set_attr "type" "cannot_bundle")])
+
;;
;; Conditional branches
diff --git a/gcc/config/tilepro/tilepro.md b/gcc/config/tilepro/tilepro.md
index 6493b06d736..d1536edada6 100644
--- a/gcc/config/tilepro/tilepro.md
+++ b/gcc/config/tilepro/tilepro.md
@@ -1578,6 +1578,12 @@
"nop"
[(set_attr "type" "Y01")])
+(define_insn "trap"
+ [(trap_if (const_int 1) (const_int 0))]
+ ""
+ "raise; moveli zero, 6"
+ [(set_attr "type" "cannot_bundle")])
+
;;
;; Conditional branches