]> granicus.if.org Git - llvm/commitdiff
[Hexagon] Adding additional tokenization characters in preparation for removing spaci...
authorColin LeMahieu <colinl@codeaurora.org>
Mon, 5 Dec 2016 04:52:28 +0000 (04:52 +0000)
committerColin LeMahieu <colinl@codeaurora.org>
Mon, 5 Dec 2016 04:52:28 +0000 (04:52 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@288637 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
lib/Target/Hexagon/Hexagon.td
lib/Target/Hexagon/HexagonInstrInfoV4.td

index 024a634f1a8e8ecba3adc90bb2c48b4d98a45928..a58c072709d6047b0257358fc32874761e226a90 100644 (file)
@@ -1484,12 +1484,6 @@ unsigned HexagonAsmParser::validateTargetOperandClass(MCParsedAsmOperand &AsmOp,
                ? Match_Success
                : Match_InvalidOperand;
   }
-  case MCK__MINUS_1: {
-    int64_t Value;
-    return Op->isImm() && Op->Imm.Val->evaluateAsAbsolute(Value) && Value == -1
-               ? Match_Success
-               : Match_InvalidOperand;
-  }
   }
   if (Op->Kind == HexagonOperand::Token && Kind != InvalidMatchClass) {
     StringRef myStringRef = StringRef(Op->Tok.Data, Op->Tok.Length);
index 5e083f0ab5227e9077441bf32c6223ca28fa73a2..0b2b46387b6ade9f5bd31e0fdbf49939179a17b5 100644 (file)
@@ -284,7 +284,7 @@ def HexagonAsmParser : AsmParser {
 
 def HexagonAsmParserVariant : AsmParserVariant {
   int Variant = 0;
-  string TokenizingCharacters = "#()=:.<>!+*";
+  string TokenizingCharacters = "#()=:.<>!+*-|^&";
 }
 
 def Hexagon : Target {
index 4ae18928e9930d6a3d09a9d364b7571af6c890d3..18943a082d28a2445416ea17f284a643269b4a38 100644 (file)
@@ -1388,7 +1388,7 @@ class NVJ_ConstImm_template<string mnemonic, bits<3> majOp, string ImmVal,
         (ins IntRegs:$src1, n1Const:$n1, brtarget:$offset),
         (ins IntRegs:$src1, brtarget:$offset)),
     "if ("#!if(isNegCond, "!","")#mnemonic
-    #"($src1.new, #" # ImmVal # ")) jump:"
+    #"($src1.new, #" # !if(!eq(ImmVal, "{-1}"), "$n1", ImmVal) # ")) jump:"
     #!if(isTak, "t","nt")#" $offset", []> {
 
       let isTaken = isTak;