Page MenuHomePhabricator

michele.scandale (Michele Scandale)
User

Projects

User does not belong to any projects.

User Details

User Since
Jun 27 2013, 3:26 AM (377 w, 3 d)

Recent Activity

Jul 17 2020

michele.scandale added a comment to D83454: [CMake] Make `intrinsics_gen` dependency unconditional..

I tested locally the standalone build of Clang with D83426.
I just want to make sure that we all agree this is right way moving forward.

Yep, with the target exported this is the right thing to do.

Great.

I don't have commit rights. Could someone land this on my behalf?

Jul 17 2020, 3:08 PM · Restricted Project, Restricted Project

Jul 10 2020

michele.scandale added a comment to D83454: [CMake] Make `intrinsics_gen` dependency unconditional..

I tested locally the standalone build of Clang with D83426.
I just want to make sure that we all agree this is right way moving forward.

Yep, with the target exported this is the right thing to do.

Jul 10 2020, 1:33 PM · Restricted Project, Restricted Project

Jul 9 2020

michele.scandale added a comment to D83454: [CMake] Make `intrinsics_gen` dependency unconditional..

I tested locally the standalone build of Clang with D83426.
I just want to make sure that we all agree this is right way moving forward.

Jul 9 2020, 2:45 PM · Restricted Project, Restricted Project
michele.scandale added a comment to D83426: Unbreak Clang standalone build..

Would you be able to land this on my behalf?

Jul 9 2020, 1:42 PM · Restricted Project

Jul 8 2020

Herald added projects to D83454: [CMake] Make `intrinsics_gen` dependency unconditional.: Restricted Project, Restricted Project.
Jul 8 2020, 9:42 PM · Restricted Project, Restricted Project
michele.scandale added a reviewer for D83426: Unbreak Clang standalone build.: compnerd.
Jul 8 2020, 9:39 PM · Restricted Project
michele.scandale added a reviewer for D83426: Unbreak Clang standalone build.: beanz.
Jul 8 2020, 9:38 PM · Restricted Project
Herald added a project to D83426: Unbreak Clang standalone build.: Restricted Project.
Jul 8 2020, 2:06 PM · Restricted Project
michele.scandale added a comment to D82659: Fix missing build dependency on omp_gen..

Uhm.. it looks like it is not needed anymore. In the LLVMConfig.cmake that will be installed a intrinsics_gen and omp_gen custom targets are created for exactly the purpose of allowing out-of-tree or standalone builds to freely depend on them.
The Clang code where intrinsics_gen is conditionally added as a dependency is from 2014, while the change in LLVMConfig.cmake.in is from 2017.

Jul 8 2020, 12:18 PM · Restricted Project, Restricted Project
michele.scandale abandoned D83414: Unbreak Clang standalone build..
Jul 8 2020, 12:05 PM · Restricted Project
Herald added a project to D83414: Unbreak Clang standalone build.: Restricted Project.
Jul 8 2020, 11:53 AM · Restricted Project

Jul 7 2020

michele.scandale added a comment to D82659: Fix missing build dependency on omp_gen..

Looks good but just one question ... When clang is built as standalone it does not build the OpenMP part inside Clang? I haven't seen any code to avoid compiling the OpenMP parsing and semantic checking inside clang.

Jul 7 2020, 11:20 PM · Restricted Project, Restricted Project
michele.scandale added a comment to D82659: Fix missing build dependency on omp_gen..

Why omp_gen is now a dependency of clang-tablegen-targets rather than being in the LLVM_COMMON_DEPENDS list like clang-tablegen-targets?

Jul 7 2020, 11:35 AM · Restricted Project, Restricted Project

Jun 17 2020

michele.scandale updated the diff for D81714: [Inliner] Handle 'no-signed-zeros-fp-math' function attribute..

Rebase

Jun 17 2020, 5:17 PM · Restricted Project
michele.scandale added a comment to D81714: [Inliner] Handle 'no-signed-zeros-fp-math' function attribute..

Thanks Akira.

Jun 17 2020, 5:17 PM · Restricted Project

Jun 11 2020

michele.scandale created D81714: [Inliner] Handle 'no-signed-zeros-fp-math' function attribute..
Jun 11 2020, 11:01 PM · Restricted Project
michele.scandale updated the summary of D81714: [Inliner] Handle 'no-signed-zeros-fp-math' function attribute..
Jun 11 2020, 11:01 PM · Restricted Project

Jun 9 2020

michele.scandale added a comment to D80462: Fix floating point math function attributes definition..

As far as I can tell the failures reported shouldn't be caused by this change.

Jun 9 2020, 1:14 PM · Restricted Project

Jun 8 2020

michele.scandale updated the diff for D80462: Fix floating point math function attributes definition..

Rebase

Jun 8 2020, 11:57 PM · Restricted Project
michele.scandale updated the diff for D80462: Fix floating point math function attributes definition..

Store CGF in RAII object.

Jun 8 2020, 6:16 PM · Restricted Project
michele.scandale updated the diff for D80462: Fix floating point math function attributes definition..

Modify IR function attribute directly.
RAII object modifies IR builder state and function attributes only if needed.
Rebase.

Jun 8 2020, 5:12 PM · Restricted Project

Jun 5 2020

michele.scandale added a comment to D80462: Fix floating point math function attributes definition..

Can we do this conservatively only if something is changed within the function definition, and otherwise respect the global settings?

Jun 5 2020, 4:16 PM · Restricted Project

Jun 4 2020

michele.scandale updated the diff for D80462: Fix floating point math function attributes definition..

Rebase

Jun 4 2020, 10:33 PM · Restricted Project

Jun 2 2020

michele.scandale updated the diff for D80462: Fix floating point math function attributes definition..

Rebase

Jun 2 2020, 9:52 AM · Restricted Project

Jun 1 2020

michele.scandale updated the diff for D80462: Fix floating point math function attributes definition..

Rebase

Jun 1 2020, 9:05 PM · Restricted Project
michele.scandale updated the summary of D80462: Fix floating point math function attributes definition..
Jun 1 2020, 9:05 PM · Restricted Project

May 29 2020

michele.scandale added a comment to D80315: Fix CC1 command line options mapping into fast-math flags..

Thanks John.

May 29 2020, 7:38 PM · Restricted Project
michele.scandale updated the diff for D80315: Fix CC1 command line options mapping into fast-math flags..

Revert last change about -ffast-math imply "fast" contraction mode by default in CC1.
Rebase.

May 29 2020, 4:25 PM · Restricted Project
michele.scandale planned changes to D80315: Fix CC1 command line options mapping into fast-math flags..
May 29 2020, 2:48 PM · Restricted Project
michele.scandale requested review of D80315: Fix CC1 command line options mapping into fast-math flags..

I've just realized it might be incorrect to have the CC1 option -ffast-math changing the default contraction mode. The clang driver generates -ffast-math based on conditions that do not involve the contraction mode state at all:

// -ffast-math enables the __FAST_MATH__ preprocessor macro, but check for the
// individual features enabled by -ffast-math instead of the option itself as
// that's consistent with gcc's behaviour.
if (!HonorINFs && !HonorNaNs && !MathErrno && AssociativeMath &&
    ReciprocalMath && !SignedZeros && !TrappingMath && !RoundingFPMath) {
  CmdArgs.push_back("-ffast-math");
  if (FPModel.equals("fast")) {
    if (FPContract.equals("fast"))
      // All set, do nothing.
      ;
    else if (FPContract.empty())
      // Enable -ffp-contract=fast
      CmdArgs.push_back(Args.MakeArgString("-ffp-contract=fast"));
    else
      D.Diag(clang::diag::warn_drv_overriding_flag_option)
        << "-ffp-model=fast"
        << Args.MakeArgString("-ffp-contract=" + FPContract);
  }
}
May 29 2020, 2:46 PM · Restricted Project

May 28 2020

michele.scandale updated the diff for D80462: Fix floating point math function attributes definition..

Rebase

May 28 2020, 11:25 PM · Restricted Project
michele.scandale updated the diff for D80315: Fix CC1 command line options mapping into fast-math flags..

Fixup more tests with now redundant -ffp-contract=fast option.

May 28 2020, 11:25 PM · Restricted Project
michele.scandale updated the diff for D80462: Fix floating point math function attributes definition..

Rebase

May 28 2020, 10:28 PM · Restricted Project
michele.scandale updated the diff for D80315: Fix CC1 command line options mapping into fast-math flags..

Rebase + -ffast-math change the default contraction mode to fast.

May 28 2020, 10:27 PM · Restricted Project
michele.scandale added a comment to D80315: Fix CC1 command line options mapping into fast-math flags..

The code cleanups all seems reasonable. The actual changes in code-generation changes are because we were failing to set these reliably?

Most of them yes.

In the CUDA test we there is now contract because we honor the default contraction mode that for CUDA is set to fast.

Right, and we weren't honoring that mode before?

Not in the setup of base fast-math flags inside CodeGenFunction. However when emitting code for expression with FPOptions stored in the AST nodes then contract was set correctly.

Okay, that seems justifiable.

In clang/test/CodeGen/complex-math.c I've added -ffp-contract=fast to the command line option because -ffast-math at the CC1 level does not change the default contraction mode.

Oh, I see, makes sense. So there was inconsistent treatment of the options, where one thing observed it but others didn't, and that's been fixed now.

Do you think we should handle -ffast-math as -cl-fast-relaxed-math, i.e. it implies the default contraction mode being "fast"?

I'm actually surprised it doesn't. I can't imagine why someone enabling fast math would want contraction to be disabled.

May 28 2020, 8:19 PM · Restricted Project

May 27 2020

michele.scandale added a comment to D80315: Fix CC1 command line options mapping into fast-math flags..

The code cleanups all seems reasonable. The actual changes in code-generation changes are because we were failing to set these reliably?

Most of them yes.

In the CUDA test we there is now contract because we honor the default contraction mode that for CUDA is set to fast.

Right, and we weren't honoring that mode before?

May 27 2020, 11:24 PM · Restricted Project
michele.scandale added a comment to D80315: Fix CC1 command line options mapping into fast-math flags..

The code cleanups all seems reasonable. The actual changes in code-generation changes are because we were failing to set these reliably?

May 27 2020, 4:55 PM · Restricted Project

May 22 2020

michele.scandale created D80462: Fix floating point math function attributes definition..
May 22 2020, 5:42 PM · Restricted Project
michele.scandale added a reviewer for D80315: Fix CC1 command line options mapping into fast-math flags.: rsmith.
May 22 2020, 4:06 PM · Restricted Project

May 21 2020

michele.scandale updated the summary of D80315: Fix CC1 command line options mapping into fast-math flags..
May 21 2020, 5:21 PM · Restricted Project
michele.scandale added a reviewer for D80315: Fix CC1 command line options mapping into fast-math flags.: scanon.
May 21 2020, 8:36 AM · Restricted Project

May 20 2020

michele.scandale updated the diff for D80315: Fix CC1 command line options mapping into fast-math flags..

Fix formatting issues.

May 20 2020, 7:20 PM · Restricted Project
michele.scandale updated the diff for D80315: Fix CC1 command line options mapping into fast-math flags..

Fix 'clang/test/CodeGenCUDA/library-builtin.cu'

May 20 2020, 1:43 PM · Restricted Project
michele.scandale added inline comments to D80315: Fix CC1 command line options mapping into fast-math flags..
May 20 2020, 10:54 AM · Restricted Project
michele.scandale added inline comments to D80315: Fix CC1 command line options mapping into fast-math flags..
May 20 2020, 10:54 AM · Restricted Project
michele.scandale created D80315: Fix CC1 command line options mapping into fast-math flags..
May 20 2020, 10:54 AM · Restricted Project

May 19 2020

michele.scandale added a comment to D79903: FastMathFlags.allowContract should be init from FPFeatures.allowFPContractAcrossStatement.

This looks good to me. @rjmccall do you have any more feedback?

May 19 2020, 10:55 AM · Restricted Project

May 14 2020

michele.scandale added inline comments to D72841: Add support for pragma float_control, to control precision and exception behavior at the source level.
May 14 2020, 2:41 PM · Restricted Project, Restricted Project
michele.scandale added inline comments to D79903: FastMathFlags.allowContract should be init from FPFeatures.allowFPContractAcrossStatement.
May 14 2020, 2:41 PM · Restricted Project

May 12 2020

michele.scandale added a comment to D72841: Add support for pragma float_control, to control precision and exception behavior at the source level.

IIUC, the way within-statement contraction is supposed to work is that there are supposed to be blocking intrinsics inserted at various places. I don't remember the details, though, or if anyone's thought about how it interacts with cross-statement contraction, which this pragma permits within the same function (and could occur with inlining regardless).

May 12 2020, 9:07 AM · Restricted Project, Restricted Project

May 11 2020

michele.scandale added inline comments to D72841: Add support for pragma float_control, to control precision and exception behavior at the source level.
May 11 2020, 9:03 PM · Restricted Project, Restricted Project
michele.scandale added inline comments to D72841: Add support for pragma float_control, to control precision and exception behavior at the source level.
May 11 2020, 7:27 PM · Restricted Project, Restricted Project

Feb 23 2020

michele.scandale updated the summary of D74643: [Parse] Fix `TryParsePtrOperatorSeq`..
Feb 23 2020, 11:30 PM · Restricted Project
michele.scandale retitled D74643: [Parse] Fix `TryParsePtrOperatorSeq`. from [Parse] Consider attributes in `TryParsePtrOperatorSeq`. to [Parse] Fix `TryParsePtrOperatorSeq`..
Feb 23 2020, 11:30 PM · Restricted Project
michele.scandale updated the diff for D74643: [Parse] Fix `TryParsePtrOperatorSeq`..

Tests for __attribute__(()) syntax + attribute arguments + fix for _Atomic qualifier.

Feb 23 2020, 10:14 PM · Restricted Project

Feb 22 2020

michele.scandale updated the diff for D74643: [Parse] Fix `TryParsePtrOperatorSeq`..

Fixed comment wording + rebase.

Feb 22 2020, 7:11 PM · Restricted Project

Feb 21 2020

michele.scandale added a comment to D74643: [Parse] Fix `TryParsePtrOperatorSeq`..

@rsmith: is this fine for you as well?

Feb 21 2020, 7:29 PM · Restricted Project

Feb 17 2020

michele.scandale added a comment to D74643: [Parse] Fix `TryParsePtrOperatorSeq`..

Assuming this is fine, I would need someone landing this change on my behalf since I do not have commit rights. Thanks!

Feb 17 2020, 7:26 PM · Restricted Project
michele.scandale updated the diff for D74643: [Parse] Fix `TryParsePtrOperatorSeq`..

Add comment about ObjC message send being rejected + rebase

Feb 17 2020, 7:24 PM · Restricted Project
michele.scandale added inline comments to D74643: [Parse] Fix `TryParsePtrOperatorSeq`..
Feb 17 2020, 6:57 PM · Restricted Project
michele.scandale updated the diff for D74643: [Parse] Fix `TryParsePtrOperatorSeq`..

Check for double brackets for C++11 style attributes, and outline the loop to skip attributes in TrySkipAttributes to fix also the other use in TryConsumeDeclarationSpecifier

Feb 17 2020, 6:51 PM · Restricted Project

Feb 14 2020

michele.scandale updated the diff for D74643: [Parse] Fix `TryParsePtrOperatorSeq`..

Missed GNU style attributes

Feb 14 2020, 1:34 PM · Restricted Project
michele.scandale created D74643: [Parse] Fix `TryParsePtrOperatorSeq`..
Feb 14 2020, 1:34 PM · Restricted Project

Dec 10 2019

michele.scandale added a comment to D62731: Add support for options -frounding-math, -ftrapping-math, -ffp-model=, and -ffp-exception-behavior=, : Specify floating point behavior.

I've noticed you removed the change for CompilerInvocation.cpp about the initialization of the codegen option NoTrappingMath. Was that an accident?

I checked the old and new version of the patch and it seems like initialization of NoTrappingMath is unchanged, the definition of the option has it default to 0, and CompilerInvocation.cpp sets it like this in ParseLangArgs, was it something else you were looking at?
Opts.NoTrappingMath = Args.hasArg(OPT_fno_trapping_math);

Dec 10 2019, 4:36 PM · Restricted Project, Restricted Project

Dec 6 2019

michele.scandale added a comment to D62731: Add support for options -frounding-math, -ftrapping-math, -ffp-model=, and -ffp-exception-behavior=, : Specify floating point behavior.

I've noticed you removed the change for CompilerInvocation.cpp about the initialization of the codegen option NoTrappingMath. Was that an accident?

Dec 6 2019, 7:47 PM · Restricted Project, Restricted Project

Dec 2 2019

michele.scandale added inline comments to D62731: Add support for options -frounding-math, -ftrapping-math, -ffp-model=, and -ffp-exception-behavior=, : Specify floating point behavior.
Dec 2 2019, 7:18 PM · Restricted Project, Restricted Project

Nov 19 2019

michele.scandale added inline comments to D62731: Add support for options -frounding-math, -ftrapping-math, -ffp-model=, and -ffp-exception-behavior=, : Specify floating point behavior.
Nov 19 2019, 11:58 PM · Restricted Project, Restricted Project
michele.scandale added inline comments to D62731: Add support for options -frounding-math, -ftrapping-math, -ffp-model=, and -ffp-exception-behavior=, : Specify floating point behavior.
Nov 19 2019, 11:35 PM · Restricted Project, Restricted Project

Nov 18 2019

michele.scandale added inline comments to D62731: Add support for options -frounding-math, -ftrapping-math, -ffp-model=, and -ffp-exception-behavior=, : Specify floating point behavior.
Nov 18 2019, 9:40 PM · Restricted Project, Restricted Project

Mar 22 2017

michele.scandale abandoned D3002: SROA fix to avoid invalid bitcast generation when converting a load from a double pointer bitcasted with an address space change of the pointee pointee.
Mar 22 2017, 1:11 PM
michele.scandale abandoned D2462: Fix for CUDA codegen due to missing generation of implicit address space conversions.
Mar 22 2017, 1:11 PM

Apr 10 2015

michele.scandale added a comment to D7622: CodeGenPrepare: Avoid and/or i1 in select conditions..

I would be fine with either skipping the transformation if the types don't match up or extending the types. I personally would lean towards skipping the transformation as the extension is an extra instruction which makes the transformation less beneficial. As none of the targets I know are affected, what would the preference for your target?

  • Matthias
Apr 10 2015, 6:44 PM
michele.scandale added a comment to D7622: CodeGenPrepare: Avoid and/or i1 in select conditions..

Hi all,

Apr 10 2015, 1:40 PM