Changes from Git (git http://labmaster3.local/git/llvm-zorg.git)


  1. [AVR] Add the AVR builder 'llvm-avr-linux' back, pulling from GitHub (details)
Commit d94f2381197b14fa3e65eafd17ad4ceaf972ae34 by me
[AVR] Add the AVR builder 'llvm-avr-linux' back, pulling from GitHub
This patch brings back the existing AVR builder that was removed in
3b645861c5110a9d11bf5f6d936ca074212cc452 due to it being incompatible
with the GitHub only repo we now have.
The builder now uses the 'getClangCMakeBuildFactory()' factory, instead
of 'getLLVMCMakeBuildFactory()' as it used to.
The file was modifiedbuildbot/osuosl/master/config/

Changes from Git (git http://labmaster3.local/git/llvm-project.git)


  1. [Scheduler] Adjust interface of CreateTargetMIHazardRecognizer to use (details)
  2. [Attributor] AAValueConstantRange: Value range analysis using constant (details)
  3. [ARM] Reegenerate MVE tests. NFC (details)
  4. [X86] Don't call LowerUINT_TO_FP_i32 for i32->f80 on 32-bit targets with (details)
  5. [VE] Minimal codegen for empty functions (details)
Commit b891490ceb390b9c9ccc93abf08c2c1bec50e340 by
[Scheduler] Adjust interface of CreateTargetMIHazardRecognizer to use
ScheduleDAGMI. NFC
All the callers of this function will be ScheduleDAGMI from the
MachineScheduler. This allows us to use the extra info available in
ScheduleDAGMI without resorting to awkward casts.
The file was modifiedllvm/include/llvm/CodeGen/TargetInstrInfo.h
The file was modifiedllvm/lib/CodeGen/TargetInstrInfo.cpp
Commit 188f9a348dc545bf9a420d998ad37761bddd7285 by uenoku.tokotoko
[Attributor] AAValueConstantRange: Value range analysis using constant
Summary: This patch introduces `AAValueConstantRange`, which answers a
possible range for integer value in a specific program point. One of the
motivations is propagating existing `range` metadata. (I think we need
to change the situation that `range` metadata cannot be put to
The state is a tuple of `ConstantRange` and it is initialized to (known,
assumed) = ([-∞, +∞], empty).
Currently, AAValueConstantRange is created in `getAssumedConstant`
method when `AAValueSimplify` returns `nullptr`(worst state).
- BinaryOperator(add, sub, ...)
- CmpInst(icmp eq, ...)
- !range metadata
`AAValueConstantRange` is not intended to extend to polyhedral range
value analysis.
Reviewers: jdoerfert, sstefan1
Reviewed By: jdoerfert
Subscribers: phosek, davezarzycki, baziotis, hiraditya, javed.absar,
Tags: #llvm
Differential Revision:
The file was modifiedllvm/test/Transforms/Attributor/dereferenceable-1.ll
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
The file was modifiedllvm/test/Transforms/Attributor/value-simplify.ll
The file was modifiedllvm/test/Transforms/Attributor/IPConstantProp/return-constant.ll
The file was addedllvm/test/Transforms/Attributor/lvi-after-jumpthreading.ll
The file was addedllvm/test/Transforms/Attributor/lvi-for-ashr.ll
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was addedllvm/test/Transforms/Attributor/range.ll
The file was modifiedllvm/test/Transforms/Attributor/IPConstantProp/solve-after-each-resolving-undefs-for-function.ll
Commit 1b264a8263f8656bd9c09c471af9b43422429ef6 by
[ARM] Reegenerate MVE tests. NFC
The mve-phireg.ll test no longer really tests what it was added for, but
the original case was fairly complex. I've left the test in as a general
codegen test.
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vpt-block-optnone.mir
The file was modifiedllvm/test/CodeGen/Thumb2/mve-stacksplot.mir
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vpt-block-fold-vcmp.mir
The file was modifiedllvm/test/CodeGen/Thumb2/mve-phireg.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vpt-2-blocks-non-consecutive-ins.mir
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vpt-2-blocks-1-pred.mir
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vpt-from-intrinsics.ll
Commit be8f217b180e134d568ff491b045d05c137b6234 by craig.topper
[X86] Don't call LowerUINT_TO_FP_i32 for i32->f80 on 32-bit targets with
We were performing an emulated i32->f64 in the SSE registers, then
storing that value to memory and doing a extload into the X87 domain.
After this patch we'll now just store the i32 to memory along with an
i32 0. Then do a 64-bit FILD to f80 completely in the X87 unit. This
matches what we do without SSE.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/scalar-int-to-fp.ll
Commit 064859bde79ccd221fd5196fd2d889014c5435c4 by simon.moll
[VE] Minimal codegen for empty functions
Summary: This patch implements minimal VE code generation for empty
function bodies (no args, no value return).
* empty function code generation test.
* Minimal function prologue & epilogue emission
* Instruction formats and instruction definitions as far as required for
the empty function prologue & epilogue.
* I64 register class definitions.
Reviewed By: arsenm
Differential Revision:
The file was addedllvm/lib/Target/VE/
The file was addedllvm/lib/Target/VE/VEISelDAGToDAG.cpp
The file was addedllvm/lib/Target/VE/InstPrinter/CMakeLists.txt
The file was addedllvm/lib/Target/VE/InstPrinter/VEInstPrinter.h
The file was modifiedllvm/lib/Target/VE/MCTargetDesc/LLVMBuild.txt
The file was addedllvm/lib/Target/VE/VETargetTransformInfo.h
The file was modifiedllvm/lib/Target/VE/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/Target/VE/CMakeLists.txt
The file was addedllvm/lib/Target/VE/InstPrinter/VEInstPrinter.cpp
The file was modifiedllvm/lib/Target/VE/LLVMBuild.txt
The file was addedllvm/lib/Target/VE/VEFrameLowering.h
The file was addedllvm/lib/Target/VE/MCTargetDesc/VETargetStreamer.cpp
The file was addedllvm/lib/Target/VE/
The file was addedllvm/lib/Target/VE/
The file was addedllvm/lib/Target/VE/
The file was addedllvm/lib/Target/VE/
The file was addedllvm/lib/Target/VE/InstPrinter/LLVMBuild.txt
The file was addedllvm/lib/Target/VE/VEISelLowering.h
The file was addedllvm/lib/Target/VE/MCTargetDesc/VETargetStreamer.h
The file was addedllvm/lib/Target/VE/VERegisterInfo.h
The file was addedllvm/lib/Target/VE/VERegisterInfo.cpp
The file was addedllvm/lib/Target/VE/MCTargetDesc/VEMCAsmInfo.h
The file was addedllvm/lib/Target/VE/VESubtarget.h
The file was modifiedllvm/lib/Target/VE/VETargetMachine.cpp
The file was addedllvm/test/CodeGen/VE/simple_prologue_epilogue.ll
The file was addedllvm/lib/Target/VE/VEAsmPrinter.cpp
The file was modifiedllvm/lib/Target/VE/VE.h
The file was addedllvm/lib/Target/VE/MCTargetDesc/VEMCAsmInfo.cpp
The file was addedllvm/lib/Target/VE/VEInstrInfo.cpp
The file was addedllvm/lib/Target/VE/VESubtarget.cpp
The file was modifiedllvm/lib/Target/VE/MCTargetDesc/VEMCTargetDesc.cpp
The file was addedllvm/lib/Target/VE/VEInstrInfo.h
The file was addedllvm/lib/Target/VE/VEFrameLowering.cpp
The file was modifiedllvm/lib/Target/VE/MCTargetDesc/VEMCTargetDesc.h
The file was addedllvm/lib/Target/VE/VEISelLowering.cpp
The file was modifiedllvm/lib/Target/VE/VETargetMachine.h
The file was addedllvm/lib/Target/VE/VEMCInstLower.cpp