[prev in list] [next in list] [prev in thread] [next in thread] 

List:       cfe-dev
Subject:    Re: [cfe-dev] Clang devirtualization proposal
From:       Hal Finkel <hfinkel () anl ! gov>
Date:       2015-07-25 19:39:32
Message-ID: 1174024.484.1437853168929.JavaMail.javamailuser () localhost
[Download RAW message or body]

Hi Piotr,

Thanks for posting this! First, a question. When you say, regarding i8* \
@llvm.invariant.group.barrier(i8*):

"Required to handle destructors, placement new and std::launder. Call of this \
function will be put on the end of each of this functions"

I completely understand placement new and std::launder. I don't understand \
destructors, could you explain?

Also, am I correct in saying that we could handle the case of 'final' classes I \
highlighted in initial e-mail by inserting these assumptions whenever a \
pointer/reference to a class of such a type came into scope?

struct A {
  virtual void foo() = 0;
};

struct B final : public A {
  void foo();
};

void entry(B *b) {
 // emit assumptions about vtbl of 'b' here?
}

Thanks again,
Hal

----- Original Message -----
> From: "Piotr Padlewski" <prazek@google.com>
> To: "cfe-dev@cs.uiuc.edu Developers" <cfe-dev@cs.uiuc.edu>, llvmdev@cs.uiuc.edu
> Cc: "Richard Smith" <richard@metafoo.co.uk>
> Sent: Wednesday, July 22, 2015 4:55:43 PM
> Subject: [cfe-dev] Clang devirtualization proposal
> 
> 
> 
> 
> Hi folks,
> this summer I will work with Richard Smith on clang devirtualization.
> Check out our proposal:
> 
> https://docs.google.com/document/d/1f2SGa4TIPuBGm6y6YO768GrQsA8awNfGEJSBFukLhYA/edit?usp=sharing
>  
> 
> 
> And modified LangRef
> http://reviews.llvm.org/D11399
> 
> 
> 
> You can also check out previous disscussion that was started before
> our proposal was ready -
> http://lists.cs.uiuc.edu/pipermail/cfe-dev/2015-July/044052.html
> 
> 
> Regards
> Piotr Padlewski
> _______________________________________________
> cfe-dev mailing list
> cfe-dev@cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
> 

-- 
Hal Finkel
Assistant Computational Scientist
Leadership Computing Facility
Argonne National Laboratory
_______________________________________________
cfe-dev mailing list
cfe-dev@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic