llvm/llvm-project

Unnecessary vector type produces wrong ll parser error

Open

#29.043 geöffnet am 22. Juli 2016

Auf GitHub ansehen
 (5 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)C++ (10.782 Forks)batch import
bugzillagood first issuellvm:core

Repository-Metriken

Stars
 (26.378 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 1T 2h) (1.000 gemergte PRs in 30 T)

Beschreibung

Bugzilla Link 28669
Version trunk
OS Linux
CC @ekatz

Extended Description

This testcase produces a misleading parse error

; RUN: llvm-as < %s
define void @add_v2i16(<2 x i16> addrspace(1)* %out, <2 x i16> %in) {
  %arst = add <2 x i16> %in, <2 x i16> <i16 123, i16 456>
  store <2 x i16> %arst, <2 x i16> addrspace(1)* %out
  ret void
}

expected-type-wrong-error.ll:3:31: error: expected type
  %arst = add <2 x i16> %in, <2 x i16> <i16 123, i16 456>

It is erroring on the 2nd operand <2 x i16> type, it really means the type is unexpected. The correctly parsing version is

  %arst = add <2 x i16> %in, <i16 123, i16 456>

Contributor Guide