Since C99 VLA has been supported, the similar schema can be used to
support the VLS.

2011/12/31 Gang Yu <yugang...@gmail.com>:
> Thanks. we also wish could get input from the original wgen authors, it is
> leaving an unsupported feature for VLA and then compiler asserts. In order
> to avoid duplication of effort, we wish learn from the seniors and then we
> can go ahead or make workaround.
>
>
> Regards
> Gang
>
>
>
> On Sat, Dec 31, 2011 at 10:42 AM, Sun Chan <sun.c...@gmail.com> wrote:
>>
>> Let me try to understand. You are asking for opinions on whether ope64
>> should ignore the VLA problem until there is further documentation
>> and/or evidence of more VLA usage? Until then, workaround that by
>> changing kernel source?
>> Sun
>>
>> On Sat, Dec 31, 2011 at 10:36 AM, Gang Yu <yugang...@gmail.com> wrote:
>> > Hi, list:
>> >
>> >    We have some efforts on building and tuning linux kernel on open64,
>> > we
>> > have fixed several bugs and now we have only two building issues  and
>> > several running issues at x86_64 target, O2 level.
>> >
>> > linux 2.6.32 as an example, the two building issues are:
>> >
>> > A). bug787, Rao Shivarama has submitted a patch, but due to the
>> > regression
>> > filed as bug882, the patch is backed out. This is still a pending issue.
>> > My
>> > personally investigation shows Rao's approach is on the right track, the
>> > bug882 shows the fix triggers the SSA version verification issues which
>> > are
>> > already known in open64, filed as bug889/891/892. We will continue work
>> > on
>> > it.
>> >
>> > B). the Variable Length Array in Structs (VLAS), this is a common issue
>> > for
>> > non-gnu compilers.
>> >
>> > clang documents the issue below:
>> >
>> > Intentionally unsupported GCC extensions
>> >
>> > clang does not support the gcc extension that allows variable-length
>> > arrays
>> > in structures. This is for a few reasons: one, it is tricky to
>> > implement,
>> > two, the extension is completely undocumented, and three, the extension
>> > appears to be rarely used. Note that clang does support flexible array
>> > members (arrays with a zero or unspecified size at the end of a
>> > structure).
>> >
>> >
>> > I review the failure case of kernel build, the VLAS are not the flexible
>> > array members(case like this : struct  A { int a; int b; char ctx[]} is
>> > called Flexible array menbers. It is a newly introduced feature c99 or
>> > later, open64 supports it well.)
>> >
>> > VLAS does not appear in linux kernel source code frequently:
>> >
>> > lib/libcrc32c.c
>> > u32 crc32c(u32 crc, const void *address, unsigned int length)
>> > 43{
>> > 44        struct {
>> > 45                struct shash_desc shash;
>> > 46                char ctx[crypto_shash_descsize(tfm)];
>> > 47        } desc;
>> > crypto/testmgr.c
>> >                 struct {
>> > 1432                        struct shash_desc shash;
>> > 1433                        char ctx[crypto_shash_descsize(tfm)];
>> > 1434                } sdesc;
>> > crypo/hmac.c
>> >                 struct {
>> > 1432                        struct shash_desc shash;
>> > 1433                        char ctx[crypto_shash_descsize(tfm)
>> > ];
>> > 1434                } sdesc;
>> >
>> >
>> >   I just speculate that clang will support kernel build by flexible
>> > array
>> > members. It is not the case,
>> >
>> > http://llvm.org/bugs/show_bug.cgi?id=4071
>> >
>> > and people claim that they build up kernel with clang, but it is not
>> > fully
>> > functional.
>> >
>> > http://lists.cs.uiuc.edu/pipermail/cfe-dev/2010-October/011711.html
>> >
>> > as this guy pointed out,
>> >
>> >   * SELinux, Posix ACLs, IPSec, eCrypt, anything that uses the crypto
>> > API -
>> > None
>> >     of these will compile, due to either an ICE or variable-length
>> > arrays in
>> >     structures (don't remember which, it's in my notes somewhere). If
>> > it's
>> >     variable-length arrays or another intentionally unsupported
>> > GNUtension,
>> > I'm
>> >     hoping it's just used in some isolated implementation detail (or
>> > details),
>> >     and not a fundamental part of the crypto API (honestly just haven't
>> > had
>> > a
>> >     chance to dive into the crypto source yet). I'm really hoping it's
>> > an
>> > issue
>> >     in Clang, though, as it's easier for me to hack Clang and I'm trying
>> > to
>> >     avoid kernel patches as much as possible.
>> >
>> >
>> > We meet the problem and post it out, we wish we could get input from
>> > community and go on the kernel building/tuning work to broaden the
>> > open64's
>> > application and improve the code quality.
>> >
>> > Thanks.
>> >
>> > Regards
>> > Gang
>> >
>> >
>> > ------------------------------------------------------------------------------
>> > Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a
>> > complex
>> > infrastructure or vast IT resources to deliver seamless, secure access
>> > to
>> > virtual desktops. With this all-in-one solution, easily deploy virtual
>> > desktops for less than the cost of PCs and save 60% on VDI
>> > infrastructure
>> > costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox
>> > _______________________________________________
>> > Open64-devel mailing list
>> > Open64-devel@lists.sourceforge.net
>> > https://lists.sourceforge.net/lists/listinfo/open64-devel
>> >
>
>
>
> ------------------------------------------------------------------------------
> Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex
> infrastructure or vast IT resources to deliver seamless, secure access to
> virtual desktops. With this all-in-one solution, easily deploy virtual
> desktops for less than the cost of PCs and save 60% on VDI infrastructure
> costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox
> _______________________________________________
> Open64-devel mailing list
> Open64-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/open64-devel
>



-- 
Regards,
Lai Jian-Xin

------------------------------------------------------------------------------
Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex
infrastructure or vast IT resources to deliver seamless, secure access to
virtual desktops. With this all-in-one solution, easily deploy virtual 
desktops for less than the cost of PCs and save 60% on VDI infrastructure 
costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to