[nvptx] Make trap insn noreturn
authorTom de Vries <tom@codesourcery.com>
Wed, 9 May 2018 10:32:40 +0000 (10:32 +0000)
committerTom de Vries <vries@gcc.gnu.org>
Wed, 9 May 2018 10:32:40 +0000 (10:32 +0000)
2018-05-09  Tom de Vries  <tom@codesourcery.com>

PR target/85626
* config/nvptx/nvptx.md (define_insn "trap", define_insn "trap_if_true")
(define_insn "trap_if_false"): Add exit after trap.

From-SVN: r260072

gcc/ChangeLog
gcc/config/nvptx/nvptx.md

index 7a36aeb65a441c8eaeb37e4ed4c08c4cbb1fd32b..654328fe8d844dd6a9ab7b61385e52e36f3b9482 100644 (file)
@@ -1,3 +1,9 @@
+2018-05-09  Tom de Vries  <tom@codesourcery.com>
+
+       PR target/85626
+       * config/nvptx/nvptx.md (define_insn "trap", define_insn "trap_if_true")
+       (define_insn "trap_if_false"): Add exit after trap.
+
 2018-05-09  Eric Botcazou  <ebotcazou@adacore.com>
 
        PR rtl-optimization/85638
index 975421959e0593f12bf2433c2dfbb07c20da3727..2988f5dfa91e110a52121143008df9d26e2a2355 100644 (file)
 (define_insn "trap"
   [(trap_if (const_int 1) (const_int 0))]
   ""
-  "trap;")
+  "trap; exit;")
 
 (define_insn "trap_if_true"
   [(trap_if (ne (match_operand:BI 0 "nvptx_register_operand" "R")
                (const_int 0))
            (const_int 0))]
   ""
-  "%j0 trap;"
+  "%j0 trap; %j0 exit;"
   [(set_attr "predicable" "false")])
 
 (define_insn "trap_if_false"
                (const_int 0))
            (const_int 0))]
   ""
-  "%J0 trap;"
+  "%J0 trap; %J0 exit;"
   [(set_attr "predicable" "false")])
 
 (define_expand "ctrap<mode>4"