[cfe-dev] Triple-related failures on clang-i686-xp-msvc9

Ted Kremenek kremenek at apple.com
Wed Mar 3 22:26:21 PST 2010


On Mar 3, 2010, at 8:45 PM, Jakob Stoklund Olesen wrote:

> 
> On Mar 3, 2010, at 8:30 PM, Ted Kremenek wrote:
> 
>> On Mar 3, 2010, at 8:28 PM, Jakob Stoklund Olesen wrote:
>> 
>>> 
>>> On Mar 3, 2010, at 8:21 PM, Ted Kremenek wrote:
>>> 
>>>> I saw these test fail on my own machine when I had not configured my LLVM build to build ARM.  Anyone doing 'configure --enable-targets=host-only' (where the host is not ARM) will see these tests fail.
>>> 
>>> Ouch.
>>> 
>>> LLVM's dg.exp files sometimes contain stuff like:
>>> 
>>> if { [llvm_supports_target Blackfin] } {
>>> RunLLVMTests [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,c,cpp}]]
>>> }
>>> 
>>> Maybe clang could do something similar?
>> 
>> We possibly could support something like this, but there is value to supporting --emit-llvm even if the target backend isn't built.  Currently all the Clang tests run on all platforms, which is nice for catching accidental breakage.  When hacking on Clang, I personally don't build all the targets most of the time because it just slows me down.
> 
> LLVM is trying to move target-specific intrinsics from the shared headers to the target libs. So far it has only been done for Blackfin and MicroBlaze. The intrinsics are not yet hooked up to builtins in clang, and we would like to do that through the TargetIntrinsicInfo interface.
> 
> If some builtins are defined by the target, it is probably not feasible to support -emit-llvm without the target present.
> 
> /jakob

That makes plenty of sense.  I'm fine about the --emit-llvm tests being dependent on what backend targets were built since that gives us a nice tradeoff in software modularity.  Ultimately we have the buildbots to tell us when we break things even if we don't build all the targets during our own development.





More information about the cfe-dev mailing list