| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
the instantiated note.
t.c:2:7: error: invalid operand for instruction
asm("movl 0(%rax), 0(%edx)");
^
<inline asm>:1:16: note: instantiated into assembly here
movl 0(%rax), 0(%edx)
^~~~~~~
1 error generated.
llvm-svn: 142131
|
| |
|
|
|
|
| |
no pattern.
llvm-svn: 142130
|
| |
|
|
| |
llvm-svn: 142129
|
| |
|
|
|
|
| |
function. No functionality changed.
llvm-svn: 142128
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
formatting as any other diagnostic, they will be properly line wrapped and
otherwise pretty printed. Let's take advantage of that and the new factoring to
add some helpful information to them (much like template backtrace notes and
other notes): the name of the macro whose expansion is being noted. This makes
a world of difference if caret diagnostics are disabled, making the expansion
notes actually useful in this case. It also helps ensure that in edge cases the
information the user needs is present. Consider:
% nl -ba t5.cc
1 #define M(x, y, z) \
2 y
3
4 M(
5 1,
6 2,
7 3);
We now produce:
% ./bin/clang -fsyntax-only t5.cc
t5.cc:6:3: error: expected unqualified-id
2,
^
t5.cc:2:3: note: expanded from macro: M
y
^
1 error generated.
Without the added information in the note, the name of the macro being expanded
would never be shown.
This also deletes a FIXME to use the diagnostic formatting. It's not yet clear
to me that we *can* do this reasonably, and the production of this message was
my primary goal here anyways.
I'd love any comments or suggestions on improving these notes, their wording,
etc. Currently, I need to make them provide more helpful information in the
presence of a token-pasting buffer, and I'm pondering adding something along
the lines of "expanded from argument N of macro: ...".
llvm-svn: 142127
|
| |
|
|
| |
llvm-svn: 142125
|
| |
|
|
|
|
|
| |
LangImpl6.html (it needed to defined the 'binary :' operator).
PR9052
llvm-svn: 142123
|
| |
|
|
| |
llvm-svn: 142122
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
this long quest: actually use the note printing machinery for each macro
expansion note rather than a hacky version of it. This will colorize and
format the notes the same as any other. There is still some stuff to fix
here, but it's one step closer.
No test case changes because currently we don't do anything differently
that I can FileCheck for -- I don't really want to try matching the
color escape codes... Suggestions for how to test this are welcome. =]
llvm-svn: 142121
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
standing deficiency: we were providing no macro backtrace information
whenever caret diagnostics were turned off. This sinks the logic for
suppressing the code snippet and caret to the code that actually prints
tho code snippet and caret. Along the way, clean up the naming of
functions, remove some now fixed FIXMEs, and generally improve the
wording and logic of this process.
Add a test case exerecising this functionality. It is notable that the
resulting messages are extremely low quality. I'm working on a follow-up
patch that should address this and have left a FIXME in the test case.
llvm-svn: 142120
|
| |
|
|
|
|
| |
backtrace behavior.
llvm-svn: 142119
|
| |
|
|
|
|
|
|
| |
the important code in this test to make the test more stable. Now adding
further tests won't shift the line numbers occuring in the diagnostic
output.
llvm-svn: 142118
|
| |
|
|
|
|
| |
VMREAD, and VMWRITE to remove hack from X86RecognizableInstr.
llvm-svn: 142117
|
| |
|
|
|
|
| |
tests to it to cover more of the macro bactrace functionality.
llvm-svn: 142116
|
| |
|
|
|
|
| |
files being generated.
llvm-svn: 142113
|
| |
|
|
|
|
| |
files being generated.
llvm-svn: 142112
|
| |
|
|
|
|
|
| |
These missing flags show up as errors when running -verify-coalescing on
test-suite.
llvm-svn: 142111
|
| |
|
|
| |
llvm-svn: 142110
|
| |
|
|
| |
llvm-svn: 142109
|
| |
|
|
| |
llvm-svn: 142108
|
| |
|
|
|
|
|
|
| |
note/warning/error as a
string, pass it around as an enum.
llvm-svn: 142107
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
does. Enhance
the X86 asmparser to produce ranges in the one case that was annoying me, for example:
test.s:10:15: error: invalid operand for instruction
movl 0(%rax), 0(%edx)
^~~~~~~
It should be straight-forward to enhance filecheck, tblgen, and/or the .ll parser to use
ranges where appropriate if someone is interested.
llvm-svn: 142106
|
| |
|
|
|
|
| |
3 instead of Operand 2 so needs special casing in the disassembler and code emitter. Ultimately, should pass this information from tablegen
llvm-svn: 142105
|
| |
|
|
|
|
|
|
|
| |
the SourceManager doesn't change, and the source files don't change.
This greatly simplifies the interfaces and interactions. The lifetime of
the TextDiagnostic object forms the 'session' over which we attempt to
condense and deduplicate information in diagnostics.
llvm-svn: 142104
|
| |
|
|
|
|
| |
not be built if LLVM_CLANG_SOURCE_DIR="" or ${LLVM_CLANG_SOURCE_DIR}/CMakeLists.txt is not found.
llvm-svn: 142103
|
| |
|
|
|
|
| |
tools/clang on tools/Makefile.
llvm-svn: 142102
|
| |
|
|
| |
llvm-svn: 142101
|
| |
|
|
|
|
| |
$(PROJ_SRC_ROOT)/tools/clang for "check-all".
llvm-svn: 142100
|
| |
|
|
| |
llvm-svn: 142098
|
| |
|
|
| |
llvm-svn: 142097
|
| |
|
|
|
|
| |
function for accessing leafs with sub leafs specified in ECX. Also added code to keep track of the max cpuid level supported in both basic and extended leaves and qualified the existing cpuid calls and the new call to leaf 7.
llvm-svn: 142089
|
| |
|
|
|
|
|
| |
function) to agree with the coding conventions, and in one case have
a bit more information in it.
llvm-svn: 142088
|
| |
|
|
|
|
|
|
|
|
| |
been there. Also delete their redundant doxyments in favor of those in
the source file. I'm putting the doxyments for private and static
helpers into the implementation file, and only the public interface
doxyments into the header. If folks have strong opinions about this type
of split, feel free to chime in, I'm happy to re-organize.
llvm-svn: 142087
|
| |
|
|
|
|
|
|
|
|
| |
making it accessible to anyone from the Frontend library. Still a good
bit of cleanup to do here, but its a good milestone. This ensures that
*all* of the functionality needed to implement the DiagnosticConsumer is
exposed via the generic interface in some form. No sneaky re-use of
static functions.
llvm-svn: 142086
|
| |
|
|
|
|
| |
part of the TextDiagnostic interface without requiring a full instance.
llvm-svn: 142085
|
| |
|
|
|
|
|
| |
allow the TextDiagnosticPrinter to continue using it even if
TextDiagnostic is implemented in a separate file.
llvm-svn: 142084
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
diagnostics to control suppression of redundant information. It now
follows the same model as all the other state, and has a bit more clear
semantics.
This is making the duality of the state a bit annoying, and I've added
a FIXME to resolve it. The problem is that I need to lift the
TextDiagnostic up into an externally visible layer before that can
happen.
llvm-svn: 142083
|
| |
|
|
|
|
| |
because these are the first VEX encoded instructions to use the reg field as an opcode extension.
llvm-svn: 142082
|
| |
|
|
|
|
| |
v2i64; CellSPU/shift_ops.ll fails when promoting elements.
llvm-svn: 142081
|
| |
|
|
|
|
| |
promoting elements.
llvm-svn: 142080
|
| |
|
|
| |
llvm-svn: 142079
|
| |
|
|
|
|
| |
// rdar://10268422
llvm-svn: 142078
|
| |
|
|
|
|
|
|
|
|
|
| |
On my machine, grep matched:
; ModuleID = '/Volumes/MacintoshHD2/src/chrome-git/src/third_party/llvm/test/Linker/2011-08-18-unique-debug-type.ll'
!9 = metadata !{i32 720932, null, metadata !"int", null, i32 0, i64 32, i64 32, i64 0, i32 0, i32 5} ; [ DW_TAG_base_type ]
Explicitly filter out the ModuleID line.
llvm-svn: 142077
|
| |
|
|
|
|
|
|
| |
linker can group them together for performance.
This only has an effect with fairly new binutils (2.21.51 or later). Other ELF targets probably want this as well, but on BSDs binutils is usually old so it doesn't matter.
llvm-svn: 142076
|
| |
|
|
|
|
| |
by reference. // rdar://10188258
llvm-svn: 142075
|
| |
|
|
| |
llvm-svn: 142074
|
| |
|
|
| |
llvm-svn: 142073
|
| |
|
|
| |
llvm-svn: 142072
|
| |
|
|
|
|
|
| |
It's the last include-stack-root we tried to walk up. Use a better name
and better doxyments for it.
llvm-svn: 142071
|
| |
|
|
|
|
|
|
|
| |
TextDiagnosticPrinter argument to the TextDiagnostic helper class. This
cements the proper ordering of things: TextDiagnostic is now a viable
stand-alone class for emitting pretty-printed textual diagnostics to
a terminal.
llvm-svn: 142070
|