[llvm-bugs] [Bug 31835] New: The static checker stackdumps on OpenMP pragma

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31835

Bug ID: 31835
   Summary: The static checker stackdumps on OpenMP pragma
   Product: clang
   Version: 3.9
  Hardware: PC
OS: Linux
Status: NEW
  Severity: normal
  Priority: P
 Component: Static Analyzer
  Assignee: kreme...@apple.com
  Reporter: k.vandersl...@let.ru.nl
CC: llvm-bugs@lists.llvm.org
Classification: Unclassified

Created attachment 17921
  --> https://llvm.org/bugs/attachment.cgi?id=17921&action=edit
failing program

When I run the static checker on a really simple program, 
it dumps a stack trace. (attached)

The program is:

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31836] New: pp_nonportable_path on absolute paths: broken delimiters

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31836

Bug ID: 31836
   Summary: pp_nonportable_path on absolute paths: broken
delimiters
   Product: clang
   Version: trunk
  Hardware: PC
OS: All
Status: NEW
  Severity: normal
  Priority: P
 Component: -New Bugs
  Assignee: unassignedclangb...@nondot.org
  Reporter: axel.naum...@cern.ch
CC: llvm-bugs@lists.llvm.org
Classification: Unclassified

Created attachment 17922
  --> https://llvm.org/bugs/attachment.cgi?id=17922&action=edit
Proposed patch - but without test

On macOS I get

$ echo '#include "/Users/Axel/Tmp/T.h"' | clang -cc1 -x c++ -E -
# 1 ""
# 1 "" 1
# 1 "" 3
# 320 "" 3
# 1 "" 1
# 1 "" 2
# 1 "" 2
:1:10: warning: non-portable path to file '"/UUsersAaxelTtmpTT.h"';
specified path differs in case from file name on disk
#include "/Users/Axel/Tmp/T.h"
 ^
 "/UUsersAaxelTtmpTT.h"
# 1 "/Users/Axel/Tmp/T.h" 1
# 2 "" 2

1 warning generated.

due to an off-by-one error for absolute paths. Attached patch seems to fixe
that.

I'd commit myself but I don't know how to write a test for that :-( Sorry!

Axel.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31837] New: [PowerPC][InlineAsm][Altivec] Cannot map altivec registers to VSX registers using %x

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31837

Bug ID: 31837
   Summary: [PowerPC][InlineAsm][Altivec] Cannot map altivec
registers to VSX registers using %x
   Product: clang
   Version: trunk
  Hardware: Other
OS: Linux
Status: NEW
  Severity: normal
  Priority: P
 Component: Frontend
  Assignee: unassignedclangb...@nondot.org
  Reporter: bruno.r...@eldorado.org.br
CC: llvm-bugs@lists.llvm.org
Classification: Unclassified

Created attachment 17923
  --> https://llvm.org/bugs/attachment.cgi?id=17923&action=edit
Test case

The attached test case compiles with gcc-6. Clang complains about invalid
operands for xxpermdi:

clang-3.9 -Werror -Wall -std=c99 -save-temps -g -maltivec test.c -o test
error: invalid operand in inline asm: 'vor $0,$1,$2
xxpermdi ${0:x},${1:x},${2:x},3
' at line 571687

The idea here is to use an Altivec register for both Altivec and VSX
instructions. When using it in a VSX instruction, a given reg vN (e.g. v0)
should be referenced as vs(N+32) (e.g. vs32).

The assembly generated by gcc:
 vor 13,1,0
 xxpermdi 45,33,32,3

(v13 <=> vs45, v1 <=> vs33, v0 <=> vs32).

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31162] LLVM (Clang) failed to optimized little-endian integer composition

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31162

Simon Pilgrim  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Simon Pilgrim  ---
Fixed in rL293036

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 24057] Missed optimization for explicit little-endian loads

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=24057

Simon Pilgrim  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #1 from Simon Pilgrim  ---
Fixed in rL293036

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 20605] clang should optimize common patterns to portably read big/little-endian data

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=20605

Artur Pilipenko  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #6 from Artur Pilipenko  ---
Fixed by rL293036 as discussed above.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31840] New: Assertion `Reg < Regs.size() && "Mismatch in # registers expected"' failed.

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31840

Bug ID: 31840
   Summary: Assertion `Reg < Regs.size() && "Mismatch in #
registers expected"' failed.
   Product: clang
   Version: 4.0
  Hardware: PC
OS: Linux
Status: NEW
  Severity: normal
  Priority: P
 Component: -New Bugs
  Assignee: unassignedclangb...@nondot.org
  Reporter: b...@linaro.org
CC: llvm-bugs@lists.llvm.org
Classification: Unclassified

Building the Linux kernel for aarch64 (with some patches to make it possible,
android-hikey-linaro-4.9-clang branch of
git://android-git.linaro.org/kernel/hikey-clang.git) with AES crypto support
enabled crashes clang (4.0 branch, svn rev. 293332)

clang-4.0:
/home/bero/abf/llvm/BUILD/llvm-4.0.0.src/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:831:
void llvm::RegsForValue::AddInlineAsmOperands(unsigned int, bool, unsigned int,
const llvm::SDLoc &, llvm::SelectionDAG &, std::vector &) const:
Assertion `Reg < Regs.size() && "Mismatch in # registers expected"' failed.
#0 0x003f82cbe460 llvm::sys::PrintStackTrace(llvm::raw_ostream&)
(/usr/lib64/libLLVMSupport.so.4.0+0x3f82cbe460)
#1 0x003f82cbd0f8 llvm::sys::RunSignalHandlers()
(/usr/lib64/libLLVMSupport.so.4.0+0x3f82cbd0f8)
#2 0x003f82cbe93a (/usr/lib64/libLLVMSupport.so.4.0+0x3f82cbe93a)
#3 0x003d6380ef00 __restore_rt (/lib64/libpthread.so.0+0x3d6380ef00)
#4 0x003d6342ef26 __GI_raise (/lib64/libc.so.6+0x3d6342ef26)
#5 0x003d6342fe32 __GI_abort (/lib64/libc.so.6+0x3d6342fe32)
#6 0x003d6342958a __GI___assert_fail (/lib64/libc.so.6+0x3d6342958a)
#7 0x003d634295ce __GI___assert_perror_fail (/lib64/libc.so.6+0x3d634295ce)
#8 0x003f91b2e9a9 llvm::RegsForValue::AddInlineAsmOperands(unsigned int,
bool, unsigned int, llvm::SDLoc const&, llvm::SelectionDAG&,
std::vector >&) const
(/usr/lib64/libLLVMSelectionDAG.so.4.0+0x3f91b2e9a9)
#9 0x003f91b426cf
llvm::SelectionDAGBuilder::visitInlineAsm(llvm::ImmutableCallSite)
(/usr/lib64/libLLVMSelectionDAG.so.4.0+0x3f91b426cf)
#10 0x003f91b36687 llvm::SelectionDAGBuilder::visitCall(llvm::CallInst
const&) (/usr/lib64/libLLVMSelectionDAG.so.4.0+0x3f91b36687)
#11 0x003f91b2f148 llvm::SelectionDAGBuilder::visit(llvm::Instruction
const&) (/usr/lib64/libLLVMSelectionDAG.so.4.0+0x3f91b2f148)
#12 0x003f91b96790
llvm::SelectionDAGISel::SelectBasicBlock(llvm::ilist_iterator, false, true>,
llvm::ilist_iterator, false, true>, bool&)
(/usr/lib64/libLLVMSelectionDAG.so.4.0+0x3f91b96790)
#13 0x003f91b95958
llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&)
(/usr/lib64/libLLVMSelectionDAG.so.4.0+0x3f91b95958)
#14 0x003f91b93354
llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&)
(/usr/lib64/libLLVMSelectionDAG.so.4.0+0x3f91b93354)
#15 0x003f8c575b65
llvm::MachineFunctionPass::runOnFunction(llvm::Function&)
(/usr/lib64/libLLVMCodeGen.so.4.0+0x3f8c575b65)
#16 0x003f82f4a89b llvm::FPPassManager::runOnFunction(llvm::Function&)
(/usr/lib64/libLLVMCore.so.4.0+0x3f82f4a89b)
#17 0x003f82f4aa64 llvm::FPPassManager::runOnModule(llvm::Module&)
(/usr/lib64/libLLVMCore.so.4.0+0x3f82f4aa64)
#18 0x003f82f4ad4c llvm::legacy::PassManagerImpl::run(llvm::Module&)
(/usr/lib64/libLLVMCore.so.4.0+0x3f82f4ad4c)
#19 0x003f9507f121 clang::EmitBackendOutput(clang::DiagnosticsEngine&,
clang::HeaderSearchOptions const&, clang::CodeGenOptions const&,
clang::TargetOptions const&, clang::LangOptions const&, llvm::DataLayout
const&, llvm::Module*, clang::BackendAction,
std::unique_ptr >)
(/usr/lib64/libclangCodeGen.so.4.0+0x3f9507f121)
#20 0x003f951f02be (/usr/lib64/libclangCodeGen.so.4.0+0x3f951f02be)
#21 0x003f8f22cdd1 clang::ParseAST(clang::Sema&, bool, bool)
(/usr/lib64/libclangParse.so.4.0+0x3f8f22cdd1)
#22 0x003f951ef445 clang::CodeGenAction::ExecuteAction()
(/usr/lib64/libclangCodeGen.so.4.0+0x3f951ef445)
#23 0x003f912a42d5 clang::FrontendAction::Execute()
(/usr/lib64/libclangFrontend.so.4.0+0x3f912a42d5)
#24 0x003f9127386e
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&)
(/usr/lib64/libclangFrontend.so.4.0+0x3f9127386e)
#25 0x003f93e05ba7
clang::ExecuteCompilerInvocation(clang::CompilerInstance*)
(/usr/lib64/libclangFrontendTool.so.4.0+0x3f93e05ba7)
#26 0x00410397 cc1_main(llvm::ArrayRef, char const*,
void*) (/usr/bin/clang-4.0+0x410397)
#27 0x0040e796 main (/usr/bin/clang-4.0+0x40e796)
#28 0x003d63420dbe __libc_start_main (/lib64/libc.so.6+0x3d63420dbe)
#29 0x0040c8ca _start (/usr/bin/clang-4.0+0x40c8ca)
Stack dump:
0.  Program arguments: /usr/bin/clang-4.0 -cc1 -triple aarch64--linux-gnu
-S -disable-free -main-file-name aes-ce-cipher.c -mrelocation-model static
-meabi gnu -mthread-model posix -mllvm -warn-stack-size=2048 -mdisable-fp-elim
-relaxed-aliasing -mdisable-tail-calls -fmath-errno -masm-verbose
-no-integrated-as -mconstructor-a

[llvm-bugs] [Bug 31841] New: [IAS] .set nobopt parsing

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31841

Bug ID: 31841
   Summary: [IAS] .set nobopt parsing
   Product: clang
   Version: trunk
  Hardware: Other
OS: FreeBSD
Status: NEW
  Severity: normal
  Priority: P
 Component: -New Bugs
  Assignee: unassignedclangb...@nondot.org
  Reporter: sbr...@freebsd.org
CC: llvm-bugs@lists.llvm.org
Classification: Unclassified

Either the code in FreeBSD's sys/boot/mips/beri/boot2/relocate.S needs to be
adjusted or clang-IAS needs to understand what to do with ".set nobopt"

--- relocate.o ---
/home/sbruno/clang/build/bin/clang -Wno-typedef-redefinition -Wno-pointer-sign
-Wno-expansion-to-defined -Wno-address-of-packed-member -target
mips64-unknown-freebsd12.0
--sysroot=/var/tmp/sbruno/mips.mips64/home/sbruno/fbsd_head/tmp -B/v
ar/tmp/sbruno/mips.mips64/home/sbruno/fbsd_head/tmp/usr/bin -ffreestanding 
   -I/home/sbruno/fbsd_head/sys/boot/mips/beri/boot2   
   -I/home/sbruno/fbsd_head/sys/boot/mips/beri/boot2/../../../common
   -I/home/sbruno/fbsd_head/sys/boot/mips/beri/boot2/../../../..  
-D_KERNEL   -Wall   -G0
-fno-pic -mno-abicalls  -msoft-float   
-g -I/h
ome/sbruno/fbsd_head/sys/boot/mips/beri/boot2/../../../../../lib/libstand/
-I/home/sbruno/fbsd_head/sys/boot/mips/beri/boot2/../common -G0 -EB
-msoft-float   -ffreestanding -MD  -MF.depend.relocate.o -MTrelocate.o
-std=gnu99-Qunused-a
rguments   -EB  -c /home/sbruno/fbsd_head/sys/boot/mips/beri/boot2/relocate.S
-o relocate.o
/home/sbruno/fbsd_head/sys/boot/mips/beri/boot2/relocate.S:35:12: error:
unexpected token, expected comma
.set nobopt

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 30361] clang segfaults when compiling template member function that calls destructor

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=30361

Hans Wennborg  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Hans Wennborg  ---
This was fixed in r293678 and merged to 4.0 in r293782.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31695] Export attribute on inline template method not ignored

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31695

Hans Wennborg  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #3 from Hans Wennborg  ---
r293800

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31823] Pick r293673 to 4.0 branch to fix code generation crash

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31823

Hans Wennborg  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||h...@chromium.org
 Resolution|--- |FIXED

--- Comment #4 from Hans Wennborg  ---
r293805

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31622] [meta] 4.0.0 Release Blockers

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31622

Bug 31622 depends on bug 31823, which changed state.

Bug 31823 Summary: Pick r293673 to 4.0 branch to fix code generation crash
https://llvm.org/bugs/show_bug.cgi?id=31823

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31832] Cherry pick r293730 to 4.0 branch

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31832

Hans Wennborg  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||h...@chromium.org
 Resolution|--- |FIXED

--- Comment #2 from Hans Wennborg  ---
r293807

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31622] [meta] 4.0.0 Release Blockers

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31622

Bug 31622 depends on bug 31832, which changed state.

Bug 31832 Summary: Cherry pick r293730 to 4.0 branch
https://llvm.org/bugs/show_bug.cgi?id=31832

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31842] New: -Wnull-conversion warnings are no longer reported for `char c = NULL`

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31842

Bug ID: 31842
   Summary: -Wnull-conversion warnings are no longer reported for
`char c = NULL`
   Product: clang
   Version: unspecified
  Hardware: PC
OS: All
Status: NEW
  Severity: normal
  Priority: P
 Component: C++
  Assignee: unassignedclangb...@nondot.org
  Reporter: cpeter...@mozilla.com
CC: dgre...@apple.com, llvm-bugs@lists.llvm.org
Classification: Unclassified

The following program used to report a -Wnull-conversion warning with whatever
clang version Apple was shipping in 2012:

  warning: implicit conversion of NULL constant to 'char' [-Wnull-conversion]

I noted this in a Firefox bug:
https://bugzilla.mozilla.org/show_bug.cgi?id=778984

With the latest clang version Apple is shipping (Apple LLVM version 8.0.0
(clang-800.0.42.1, Target: x86_64-apple-darwin16.4.0), the following program
produces no warnings, even with clang -Weverything:


#include 

int main()
{
  bool b = NULL; (void) b;
  char c = NULL; (void) c;
  int i = NULL; (void) i;
  return 0;
}

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31622] [meta] 4.0.0 Release Blockers

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31622

Bug 31622 depends on bug 31727, which changed state.

Bug 31727 Summary: LLD installation is broken (liblldELF.so, liblldDriver.so, 
liblldCOFF.so not installed)
https://llvm.org/bugs/show_bug.cgi?id=31727

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31727] LLD installation is broken (liblldELF.so, liblldDriver.so, liblldCOFF.so not installed)

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31727

Hans Wennborg  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||h...@chromium.org
 Resolution|--- |FIXED

--- Comment #1 from Hans Wennborg  ---
Looks like the fix landed in r292909, and was merged to 4.0 in r293288.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31055] LLVM JIT crashes on Windows when built in debug mode

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31055

Hans Wennborg  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||h...@chromium.org
 Resolution|--- |INVALID

--- Comment #3 from Hans Wennborg  ---
Marking invalid since there's not enough info to reproduce.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31841] [IAS] .set nobopt parsing

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31841

Simon Dardis  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #3 from Simon Dardis  ---
r293798 resolves this.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 28532] compiler-rt download link is broken

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=28532

Hans Wennborg  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||h...@chromium.org
 Resolution|--- |FIXED

--- Comment #1 from Hans Wennborg  ---
It works for me now, so I assume this was fixed.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31825] ClangConfig find_package() fix backport (r293632)

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31825

Hans Wennborg  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |WONTFIX

--- Comment #3 from Hans Wennborg  ---
Since it's not a regression from 3.9, I'd prefer not to merge the patch at this
point.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31622] [meta] 4.0.0 Release Blockers

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31622

Bug 31622 depends on bug 31825, which changed state.

Bug 31825 Summary: ClangConfig find_package() fix backport (r293632)
https://llvm.org/bugs/show_bug.cgi?id=31825

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |WONTFIX

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31804] Apply r293542 to 4.0 release branch

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31804

Hans Wennborg  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||h...@chromium.org
 Resolution|--- |FIXED

--- Comment #1 from Hans Wennborg  ---
r293819

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31622] [meta] 4.0.0 Release Blockers

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31622

Bug 31622 depends on bug 31804, which changed state.

Bug 31804 Summary: Apply r293542 to 4.0 release branch
https://llvm.org/bugs/show_bug.cgi?id=31804

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31622] [meta] 4.0.0 Release Blockers

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31622

Bug 31622 depends on bug 31833, which changed state.

Bug 31833 Summary: Apply r 292878 to 4.0 release branch
https://llvm.org/bugs/show_bug.cgi?id=31833

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31833] Apply r 292878 to 4.0 release branch

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31833

Hans Wennborg  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #3 from Hans Wennborg  ---
r293835

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31843] New: Clang-4.0 crashes/assert while evaluating __builtin_object_size: "APValues can't handle invalid LValue bases"

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31843

Bug ID: 31843
   Summary: Clang-4.0 crashes/assert while evaluating
__builtin_object_size:  "APValues can't handle invalid
LValue bases"
   Product: clang
   Version: 4.0
  Hardware: PC
OS: All
Status: NEW
  Severity: normal
  Priority: P
 Component: Frontend
  Assignee: unassignedclangb...@nondot.org
  Reporter: mehdi.am...@apple.com
CC: llvm-bugs@lists.llvm.org
Classification: Unclassified

Simple reproduction (build as C file):


struct statfs { char f_mntonname[1024];};
fn1() {
  struct statfs *outStatFSBuf;
  __builtin_object_size (outStatFSBuf->f_mntonname ? outStatFSBuf : "", 2 > 1 ?
1 : 0);
}


AFAICT what happens is that in:

  static bool Evaluate(APValue &Result, EvalInfo &Info, const Expr *E) {


we're doing:

  } else if (T->hasPointerRepresentation()) {
LValue LV;
if (!EvaluatePointer(E, LV, Info))
  return false;
LV.moveInto(Result);


The issue is that `Info.allowInvalidBaseExpr()` is true, so `EvaluatePointer`
returns true even though the Base is marked as invalid in the result `LV`.
We then assert in the call  `LV.moveInto(Result);`   "APValues can't handle
invalid LValue bases"

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31844] New: Many small consecutive moves of constants aren't optimized into something better.

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31844

Bug ID: 31844
   Summary: Many small consecutive moves of constants aren't
optimized into something better.
   Product: libraries
   Version: trunk
  Hardware: PC
OS: All
Status: NEW
  Severity: normal
  Priority: P
 Component: Scalar Optimizations
  Assignee: george.burgess...@gmail.com
  Reporter: george.burgess...@gmail.com
CC: llvm-bugs@lists.llvm.org
Classification: Unclassified

Motivating example: https://godbolt.org/g/VOk6W6

Danny noted that test2 gets turned into good code because clang emits an
intermediate alloca to write the {0, 1, ...} array to, whereas in test1, {0, 1,
...} gets written directly to an sret param. As a result, SROA was able to work
on test2, but not test1.

The idea at the moment is that we should just make MemCpyOpt handle this; it's
happy to turn consecutive stores of the same value into a memset, but isn't
currently able to turn consecutive stores of different values into a memcpy:
http://llvm.org/docs/doxygen/html/MemCpyOptimizer_8cpp_source.html#l00626 .

I'm happy to see what I can do here, but this isn't at the top of my list. So,
if someone else wants to jump on this, feel free. :)

(Mildly verbose) repro: running `opt -O2` on the following code is effectively
a nop.

%struct.FooContainer = type { i16, %struct.Foo, i16 }
%struct.Foo = type { [16 x i8] }

; Function Attrs: norecurse nounwind uwtable
define void @_Z5test1v(%struct.FooContainer* noalias nocapture sret
%agg.result) local_unnamed_addr {
entry:
  %a = getelementptr inbounds %struct.FooContainer, %struct.FooContainer*
%agg.result, i64 0, i32 0
  store i16 0, i16* %a, align 2
  %arrayinit.begin = getelementptr inbounds %struct.FooContainer,
%struct.FooContainer* %agg.result, i64 0, i32 1, i32 0, i64 0
  store i8 0, i8* %arrayinit.begin, align 2
  %arrayinit.element = getelementptr inbounds %struct.FooContainer,
%struct.FooContainer* %agg.result, i64 0, i32 1, i32 0, i64 1
  store i8 1, i8* %arrayinit.element, align 1
  %arrayinit.element2 = getelementptr inbounds %struct.FooContainer,
%struct.FooContainer* %agg.result, i64 0, i32 1, i32 0, i64 2
  store i8 2, i8* %arrayinit.element2, align 2
  %arrayinit.element3 = getelementptr inbounds %struct.FooContainer,
%struct.FooContainer* %agg.result, i64 0, i32 1, i32 0, i64 3
  store i8 3, i8* %arrayinit.element3, align 1
  %arrayinit.element4 = getelementptr inbounds %struct.FooContainer,
%struct.FooContainer* %agg.result, i64 0, i32 1, i32 0, i64 4
  store i8 4, i8* %arrayinit.element4, align 2
  %arrayinit.element5 = getelementptr inbounds %struct.FooContainer,
%struct.FooContainer* %agg.result, i64 0, i32 1, i32 0, i64 5
  store i8 5, i8* %arrayinit.element5, align 1
  %arrayinit.element6 = getelementptr inbounds %struct.FooContainer,
%struct.FooContainer* %agg.result, i64 0, i32 1, i32 0, i64 6
  store i8 6, i8* %arrayinit.element6, align 2
  %arrayinit.element7 = getelementptr inbounds %struct.FooContainer,
%struct.FooContainer* %agg.result, i64 0, i32 1, i32 0, i64 7
  store i8 7, i8* %arrayinit.element7, align 1
  %arrayinit.element8 = getelementptr inbounds %struct.FooContainer,
%struct.FooContainer* %agg.result, i64 0, i32 1, i32 0, i64 8
  store i8 8, i8* %arrayinit.element8, align 2
  %arrayinit.element9 = getelementptr inbounds %struct.FooContainer,
%struct.FooContainer* %agg.result, i64 0, i32 1, i32 0, i64 9
  store i8 9, i8* %arrayinit.element9, align 1
  %arrayinit.element10 = getelementptr inbounds %struct.FooContainer,
%struct.FooContainer* %agg.result, i64 0, i32 1, i32 0, i64 10
  store i8 10, i8* %arrayinit.element10, align 2
  %arrayinit.element11 = getelementptr inbounds %struct.FooContainer,
%struct.FooContainer* %agg.result, i64 0, i32 1, i32 0, i64 11
  store i8 11, i8* %arrayinit.element11, align 1
  %arrayinit.element12 = getelementptr inbounds %struct.FooContainer,
%struct.FooContainer* %agg.result, i64 0, i32 1, i32 0, i64 12
  store i8 12, i8* %arrayinit.element12, align 2
  %arrayinit.element13 = getelementptr inbounds %struct.FooContainer,
%struct.FooContainer* %agg.result, i64 0, i32 1, i32 0, i64 13
  store i8 13, i8* %arrayinit.element13, align 1
  %arrayinit.element14 = getelementptr inbounds %struct.FooContainer,
%struct.FooContainer* %agg.result, i64 0, i32 1, i32 0, i64 14
  store i8 14, i8* %arrayinit.element14, align 2
  %arrayinit.element15 = getelementptr inbounds %struct.FooContainer,
%struct.FooContainer* %agg.result, i64 0, i32 1, i32 0, i64 15
  store i8 15, i8* %arrayinit.element15, align 1
  %c = getelementptr inbounds %struct.FooContainer, %struct.FooContainer*
%agg.result, i64 0, i32 2
  store i16 7, i16* %c, align 2
  ret void
}

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.o

[llvm-bugs] [Bug 31845] New: Apply r 292167 / 292169 / 292170 to 4.0 release branch

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31845

Bug ID: 31845
   Summary: Apply r 292167 / 292169 / 292170 to 4.0 release branch
   Product: new-bugs
   Version: 4.0
  Hardware: PC
OS: OpenBSD
Status: NEW
  Severity: normal
  Priority: P
 Component: new bugs
  Assignee: unassignedb...@nondot.org
  Reporter: b...@comstyle.com
CC: llvm-bugs@lists.llvm.org
Classification: Unclassified

Fixes llvm-objdump not recognizing some phdr types. PR 31641

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs


[llvm-bugs] [Bug 31846] New: clang crashes on valid C++14 code with -std=c++11: UNREACHABLE executed at /path/to/CodeGenTypes.cpp:485!

2017-02-01 Thread via llvm-bugs
https://llvm.org/bugs/show_bug.cgi?id=31846

Bug ID: 31846
   Summary: clang crashes on valid C++14 code with -std=c++11:
UNREACHABLE executed at /path/to/CodeGenTypes.cpp:485!
   Product: clang
   Version: unspecified
  Hardware: PC
OS: All
Status: NEW
  Severity: normal
  Priority: P
 Component: C++11
  Assignee: unassignedclangb...@nondot.org
  Reporter: s...@cs.ucdavis.edu
CC: dgre...@apple.com, llvm-bugs@lists.llvm.org
Classification: Unclassified

$ clang++ -v
clang version 5.0.0 (trunk 293675)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /usr/local/clang-trunk/bin
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/4.9
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/4.9.4
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/5
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/5.3.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.4
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.4.7
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.7
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.7.3
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.8
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.8.5
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.4
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/5
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/5.3.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6.2.0
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9
Candidate multilib: .;@m64
Candidate multilib: 32;@m32
Candidate multilib: x32;@mx32
Selected multilib: .;@m64
$ 
$ clang++ -c -std=c++14 small.cpp
$
$ clang++ -c -std=c++11 small.cpp
Unexpected placeholder builtin type!
UNREACHABLE executed at
/tmp/llvm-builder/llvm-source-trunk/tools/clang/lib/CodeGen/CodeGenTypes.cpp:485!
#0 0x020720e5 llvm::sys::PrintStackTrace(llvm::raw_ostream&)
(/usr/local/clang-trunk/bin/clang-5.0+0x20720e5)
#1 0x0207020e llvm::sys::RunSignalHandlers()
(/usr/local/clang-trunk/bin/clang-5.0+0x207020e)
#2 0x02070370 SignalHandler(int)
(/usr/local/clang-trunk/bin/clang-5.0+0x2070370)
#3 0x7fc980455330 __restore_rt
(/lib/x86_64-linux-gnu/libpthread.so.0+0x10330)
#4 0x7fc97f241c37 gsignal
/build/eglibc-oGUzwX/eglibc-2.19/signal/../nptl/sysdeps/unix/sysv/linux/raise.c:56:0
#5 0x7fc97f245028 abort
/build/eglibc-oGUzwX/eglibc-2.19/stdlib/abort.c:91:0
#6 0x02020d1a (/usr/local/clang-trunk/bin/clang-5.0+0x2020d1a)
#7 0x022cd63f
clang::CodeGen::CodeGenTypes::ConvertType(clang::QualType)
(/usr/local/clang-trunk/bin/clang-5.0+0x22cd63f)
#8 0x0235ae22
clang::CodeGen::CodeGenTypes::arrangeLLVMFunctionInfo(clang::CanQual,
bool, bool, llvm::ArrayRef >,
clang::FunctionType::ExtInfo,
llvm::ArrayRef,
clang::CodeGen::RequiredArgs) (/usr/local/clang-trunk/bin/clang-5.0+0x235ae22)
#9 0x0235c897 arrangeLLVMFunctionInfo(clang::CodeGen::CodeGenTypes&,
bool, llvm::SmallVectorImpl >&,
clang::CanQual, clang::FunctionDecl const*)
(/usr/local/clang-trunk/bin/clang-5.0+0x235c897)
#10 0x0235ca64
clang::CodeGen::CodeGenTypes::arrangeCXXMethodType(clang::CXXRecordDecl const*,
clang::FunctionProtoType const*, clang::CXXMethodDecl const*)
(/usr/local/clang-trunk/bin/clang-5.0+0x235ca64)
#11 0x023c0eed
clang::CodeGen::CodeGenFunction::EmitCXXMemberOrOperatorMemberCallExpr(clang::CallExpr
const*, clang::CXXMethodDecl const*, clang::CodeGen::ReturnValueSlot, bool,
clang::NestedNameSpecifier*, bool, clang::Expr const*)
(/usr/local/clang-trunk/bin/clang-5.0+0x23c0eed)
#12 0x023c1952
clang::CodeGen::CodeGenFunction::EmitCXXOperatorMemberCallExpr(clang::CXXOperatorCallExpr
const*, clang::CXXMethodDecl const*, clang::CodeGen::ReturnValueSlot)
(/usr/local/clang-trunk/bin/clang-5.0+0x23c1952)
#13 0x023af8d7
clang::CodeGen::CodeGenFunction::EmitCallExpr(clang::CallExpr const*,
clang::CodeGen::ReturnValueSlot)
(/usr/local/clang-trunk/bin/clang-5.0+0x23af8d7)
#14 0x009501dc (anonymous
namespace)::ScalarExprEmitter::VisitCallExpr(clang::CallExpr const*)
(/usr/local/clang-trunk/bin/clang-5.0+0x9501dc)
#15 0x023d4358 (anonymous
namespace)::ScalarExprEmitter::Visit(clang::Expr*)
(/usr/local/clang-trunk/bin/clang-5.0+0x23d4358)
#16 0x023d4993
clang::CodeGen::CodeGenFunction::EmitScalarExpr(clang::Expr const*, bool)
(/usr/local/clang-trunk/bin/clang-5.0+0x23d4993)
#17 0x0239738f clang::CodeGen::Cod