| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
as X86 is currently the only FastISel target. Per review.
llvm-svn: 97255
|
|
|
|
| |
llvm-svn: 95730
|
|
|
|
|
|
|
|
|
| |
into TargetOpcodes.h. #include the new TargetOpcodes.h
into MachineInstr. Add new inline accessors (like isPHI())
to MachineInstr, and start using them throughout the
codebase.
llvm-svn: 95687
|
|
|
|
|
|
|
| |
addresses in dbg.declare; ignore this for the
moment to prevent things from breaking.
llvm-svn: 95471
|
|
|
|
|
|
|
| |
dbg.declare's we currently generate go through both
register allocators without perturbing the results.
llvm-svn: 94480
|
|
|
|
| |
llvm-svn: 93818
|
|
|
|
|
|
|
|
|
| |
comments (fast isel, X86). This doesn't seem
to break any functionality, but will introduce
cases where -g affects the generated code. I'll
be fixing that.
llvm-svn: 93811
|
|
|
|
|
|
|
|
|
| |
its first argument, via function-local metadata (instead of via a bitcast).
This patch also cleans up code that expects there to be a bitcast in the first argument and testcases that call llvm.dbg.declare.
It also strips old llvm.dbg.declare intrinsics that did not pass metadata as the first argument.
llvm-svn: 93531
|
|
|
|
|
|
| |
auto-upgraded
llvm-svn: 93515
|
|
|
|
|
|
|
|
| |
its first argument, via function-local metadata (instead of via a bitcast).
This patch also cleans up code that expects there to be a bitcast in the first argument and testcases that call llvm.dbg.declare.
llvm-svn: 93504
|
|
|
|
| |
llvm-svn: 93227
|
|
|
|
|
|
|
| |
uses several kinds of opcode values which are not declared within
that enum. This fixes PR5946.
llvm-svn: 92794
|
|
|
|
|
|
|
|
|
| |
Intrinsic::dbg_stoppoint
Intrinsic::dbg_region_start
Intrinsic::dbg_region_end
Intrinsic::dbg_func_start
llvm-svn: 92672
|
|
|
|
| |
llvm-svn: 92263
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I asked Devang to do back on Sep 27. Instead of going through the
MetadataContext class with methods like getMD() and getMDs(), just
ask the instruction directly for its metadata with getMetadata()
and getAllMetadata().
This includes a variety of other fixes and improvements: previously
all Value*'s were bloated because the HasMetadata bit was thrown into
value, adding a 9th bit to a byte. Now this is properly sunk down to
the Instruction class (the only place where it makes sense) and it
will be folded away somewhere soon.
This also fixes some confusion in getMDs and its clients about
whether the returned list is indexed by the MDID or densely packed.
This is now returned sorted and densely packed and the comments make
this clear.
This introduces a number of fixme's which I'll follow up on.
llvm-svn: 92235
|
|
|
|
|
|
|
| |
doesn't exist already, eliminate registerMDKind. Tidy up a bunch
of random stuff.
llvm-svn: 92225
|
|
|
|
| |
llvm-svn: 92180
|
|
|
|
|
|
| |
instead of SelectionDAGISel.cpp.
llvm-svn: 90636
|
|
|
|
|
|
| |
Patch by Howard Hinnant!
llvm-svn: 90365
|
|
|
|
|
|
| |
SelectionDAGBuild.cpp to SelectionDAGBuilder.cpp.
llvm-svn: 89681
|
|
|
|
|
|
| |
FunctionLoweringInfo.cpp.
llvm-svn: 89674
|
|
|
|
|
|
| |
make it permanent and remove old way of inserting intrinsics to encode debug info for line number and scopes.
llvm-svn: 87014
|
|
|
|
| |
llvm-svn: 86748
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
so get rid of eh.selector.i64 and rename eh.selector.i32 to eh.selector.
Likewise for eh.typeid.for. This aligns us with gcc, which always uses a
32 bit value for the selector on all platforms. My understanding is that
the register allocator used to assert if the selector intrinsic size didn't
match the pointer size, and this was the reason for introducing the two
variants. However my testing shows that this is no longer the case (I
fixed some bugs in selector lowering yesterday, and some more today in the
fastisel path; these might have caused the original problems).
llvm-svn: 84106
|
|
|
|
|
|
| |
s/DebugLoc.InlinedLoc/DebugLoc.InlinedAtLoc/g
llvm-svn: 84054
|
|
|
|
|
|
|
|
| |
alloca or llvm.dbg.declare location.
While recording beginning of a function, use scope info from the first location entry instead of just relying on first location entry itself.
llvm-svn: 83684
|
|
|
|
|
|
| |
This is not yet enabled.
llvm-svn: 83400
|
|
|
|
|
|
| |
slots used by a variable. This info will be used by AsmPrinter to emit debug info for variables.
llvm-svn: 83189
|
|
|
|
| |
llvm-svn: 81493
|
|
|
|
|
|
| |
isn't legal.
llvm-svn: 81492
|
|
|
|
| |
llvm-svn: 81415
|
|
|
|
|
|
|
|
|
| |
from floating-point to integer first, and bitcast the result
back to floating-point. Previously, this test was passing by
falling back to SelectionDAG lowering. The resulting code isn't
as nice, but it's correct and CodeGen now stays on the fast path.
llvm-svn: 81171
|
|
|
|
|
|
|
| |
FastISel to recognize this pattern and emit a floating-point
negation using xor.
llvm-svn: 80963
|
|
|
|
|
|
| |
Use MDNodes to encode debug info in llvm IR.
llvm-svn: 80406
|
|
|
|
| |
llvm-svn: 80073
|
|
|
|
|
|
|
|
| |
llvm.dbg.... global variables, to encode debugging information in llvm IR. This is mostly a mechanical change that tests metadata support very well.
This change speeds up llvm-gcc by more then 6% at "-O0 -g" (measured by compiling InstructionCombining.cpp!)
llvm-svn: 79977
|
|
|
|
| |
llvm-svn: 79742
|
|
|
|
| |
llvm-svn: 78948
|
|
|
|
|
|
| |
infrastructure work needed to get the contexts to where they need to be first.
llvm-svn: 78759
|
|
|
|
| |
llvm-svn: 78725
|
|
|
|
|
|
|
|
| |
while
the latter is capable of representing either a primitive or an extended type.
llvm-svn: 78713
|
|
|
|
|
|
| |
own struct type.
llvm-svn: 78610
|
|
|
|
|
|
| |
SimpleValueType, which will simplify the privatization of IntegerType in the future.
llvm-svn: 78584
|
|
|
|
|
|
|
|
| |
change back are
metadata related, which I'm waiting on to avoid conflicting with Devang.
llvm-svn: 77721
|
|
|
|
|
|
| |
thanks to contexts-on-types. More to come.
llvm-svn: 77011
|
|
|
|
| |
llvm-svn: 76702
|
|
|
|
|
|
|
|
| |
number of issues in
our current context-passing stuff, which is also fixed here
llvm-svn: 76089
|
|
|
|
|
|
|
|
|
| |
Constants.cpp and ConstantFold.cpp.
This involves temporarily hard wiring some parts to use the global context. This isn't ideal, but it's
the only way I could figure out to make this process vaguely incremental.
llvm-svn: 75445
|
|
|
|
| |
llvm-svn: 74733
|
|
|
|
| |
llvm-svn: 74677
|