[all-commits] [llvm/llvm-project] 62f3ef: [CGCall] Annotate references with "align" attribute.

Eli Friedman via All-commits all-commits at lists.llvm.org
Tue May 19 20:22:07 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 62f3ef2b537335fde1c17363c9440618b6fefd6a
      https://github.com/llvm/llvm-project/commit/62f3ef2b537335fde1c17363c9440618b6fefd6a
  Author: Eli Friedman <efriedma at quicinc.com>
  Date:   2020-05-19 (Tue, 19 May 2020)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/test/CXX/except/except.spec/p14-ir.cpp
    M clang/test/CodeGen/align_value.cpp
    M clang/test/CodeGen/pch-dllexport.cpp
    M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
    M clang/test/CodeGenCXX/address-space-ref.cpp
    M clang/test/CodeGenCXX/amdgcn-func-arg.cpp
    M clang/test/CodeGenCXX/atomic-dllexport.cpp
    M clang/test/CodeGenCXX/attr-target-mv-member-funcs.cpp
    M clang/test/CodeGenCXX/blocks-cxx11.cpp
    M clang/test/CodeGenCXX/blocks.cpp
    M clang/test/CodeGenCXX/call-with-static-chain.cpp
    M clang/test/CodeGenCXX/catch-undef-behavior.cpp
    M clang/test/CodeGenCXX/conditional-gnu-ext.cpp
    M clang/test/CodeGenCXX/const-init-cxx11.cpp
    M clang/test/CodeGenCXX/constructor-direct-call.cpp
    M clang/test/CodeGenCXX/constructor-init.cpp
    M clang/test/CodeGenCXX/constructors.cpp
    M clang/test/CodeGenCXX/convert-to-fptr.cpp
    M clang/test/CodeGenCXX/copy-assign-synthesis-1.cpp
    M clang/test/CodeGenCXX/copy-constructor-elim-2.cpp
    M clang/test/CodeGenCXX/copy-constructor-synthesis-2.cpp
    M clang/test/CodeGenCXX/copy-constructor-synthesis.cpp
    M clang/test/CodeGenCXX/cxx11-initializer-aggregate.cpp
    M clang/test/CodeGenCXX/cxx11-thread-local-reference.cpp
    M clang/test/CodeGenCXX/cxx1y-variable-template-linkage.cpp
    M clang/test/CodeGenCXX/decl-ref-init.cpp
    M clang/test/CodeGenCXX/default-arg-temps.cpp
    M clang/test/CodeGenCXX/dereferenceable.cpp
    M clang/test/CodeGenCXX/derived-to-base-conv.cpp
    M clang/test/CodeGenCXX/devirtualize-virtual-function-calls-final.cpp
    M clang/test/CodeGenCXX/dllexport-members.cpp
    M clang/test/CodeGenCXX/dllexport.cpp
    M clang/test/CodeGenCXX/dllimport-members.cpp
    M clang/test/CodeGenCXX/dllimport.cpp
    M clang/test/CodeGenCXX/eh.cpp
    M clang/test/CodeGenCXX/empty-nontrivially-copyable.cpp
    M clang/test/CodeGenCXX/exceptions.cpp
    M clang/test/CodeGenCXX/ext-int.cpp
    M clang/test/CodeGenCXX/fastcall.cpp
    M clang/test/CodeGenCXX/goto.cpp
    M clang/test/CodeGenCXX/implicit-copy-assign-operator.cpp
    M clang/test/CodeGenCXX/implicit-copy-constructor.cpp
    M clang/test/CodeGenCXX/implicit-function-conversion.cpp
    M clang/test/CodeGenCXX/inheriting-constructor-cleanup.cpp
    M clang/test/CodeGenCXX/mangle-lambdas.cpp
    M clang/test/CodeGenCXX/mangle-win-ccs.cpp
    M clang/test/CodeGenCXX/mangle.cpp
    M clang/test/CodeGenCXX/matrix-type.cpp
    M clang/test/CodeGenCXX/microsoft-abi-sret-and-byval.cpp
    M clang/test/CodeGenCXX/microsoft-abi-static-initializers.cpp
    M clang/test/CodeGenCXX/nrvo.cpp
    M clang/test/CodeGenCXX/pod-member-memcpys.cpp
    M clang/test/CodeGenCXX/pointers-to-data-members.cpp
    M clang/test/CodeGenCXX/pr28360.cpp
    M clang/test/CodeGenCXX/reference-cast.cpp
    M clang/test/CodeGenCXX/regcall.cpp
    M clang/test/CodeGenCXX/rvalue-references.cpp
    M clang/test/CodeGenCXX/stack-reuse-miscompile.cpp
    M clang/test/CodeGenCXX/static-init.cpp
    M clang/test/CodeGenCXX/stmtexpr.cpp
    M clang/test/CodeGenCXX/temporaries.cpp
    M clang/test/CodeGenCXX/throw-expressions.cpp
    M clang/test/CodeGenCXX/thunks.cpp
    M clang/test/CodeGenCXX/trivial_abi.cpp
    M clang/test/CodeGenCXX/volatile.cpp
    M clang/test/CodeGenCXX/wasm-args-returns.cpp
    M clang/test/CodeGenCoroutines/coro-alloc.cpp
    M clang/test/CodeGenCoroutines/coro-await.cpp
    M clang/test/CodeGenCoroutines/coro-params.cpp
    M clang/test/CodeGenObjC/return-objc-object.mm
    M clang/test/CodeGenObjCXX/arc-blocks.mm
    M clang/test/CodeGenObjCXX/arc-move.mm
    M clang/test/CodeGenObjCXX/arc-special-member-functions.mm
    M clang/test/CodeGenObjCXX/implicit-copy-assign-operator.mm
    M clang/test/CodeGenObjCXX/implicit-copy-constructor.mm
    M clang/test/CodeGenObjCXX/lambda-expressions.mm
    M clang/test/CodeGenObjCXX/lvalue-reference-getter.mm
    M clang/test/CodeGenObjCXX/message-reference.mm
    M clang/test/CodeGenObjCXX/objc-struct-cxx-abi.mm
    M clang/test/CodeGenObjCXX/objc-weak.mm
    M clang/test/CodeGenObjCXX/property-dot-reference.mm
    M clang/test/CodeGenObjCXX/property-lvalue-capture.mm
    M clang/test/CodeGenObjCXX/property-object-reference-2.mm
    M clang/test/CodeGenObjCXX/property-objects.mm
    M clang/test/CodeGenObjCXX/property-reference.mm
    M clang/test/CodeGenOpenCLCXX/addrspace-of-this.cl
    M clang/test/CodeGenOpenCLCXX/addrspace-references.cl
    M clang/test/Modules/templates.mm
    M clang/test/OpenMP/atomic_codegen.cpp
    M clang/test/OpenMP/declare_reduction_codegen.cpp
    M clang/test/OpenMP/declare_target_codegen.cpp
    M clang/test/OpenMP/declare_target_codegen_globalization.cpp
    M clang/test/OpenMP/declare_target_link_codegen.cpp
    M clang/test/OpenMP/distribute_codegen.cpp
    M clang/test/OpenMP/distribute_simd_codegen.cpp
    M clang/test/OpenMP/for_firstprivate_codegen.cpp
    M clang/test/OpenMP/for_lastprivate_codegen.cpp
    M clang/test/OpenMP/for_linear_codegen.cpp
    M clang/test/OpenMP/for_reduction_codegen.cpp
    M clang/test/OpenMP/for_reduction_codegen_UDR.cpp
    M clang/test/OpenMP/nvptx_data_sharing.cpp
    M clang/test/OpenMP/nvptx_declare_target_var_ctor_dtor_codegen.cpp
    M clang/test/OpenMP/nvptx_distribute_parallel_generic_mode_codegen.cpp
    M clang/test/OpenMP/nvptx_lambda_capturing.cpp
    M clang/test/OpenMP/nvptx_parallel_codegen.cpp
    M clang/test/OpenMP/nvptx_target_codegen.cpp
    M clang/test/OpenMP/nvptx_target_teams_codegen.cpp
    M clang/test/OpenMP/nvptx_target_teams_distribute_parallel_for_codegen.cpp
    M clang/test/OpenMP/nvptx_target_teams_distribute_parallel_for_generic_mode_codegen.cpp
    M clang/test/OpenMP/nvptx_teams_reduction_codegen.cpp
    M clang/test/OpenMP/openmp_offload_codegen.cpp
    M clang/test/OpenMP/ordered_codegen.cpp
    M clang/test/OpenMP/parallel_codegen.cpp
    M clang/test/OpenMP/parallel_copyin_codegen.cpp
    M clang/test/OpenMP/parallel_firstprivate_codegen.cpp
    M clang/test/OpenMP/parallel_for_codegen.cpp
    M clang/test/OpenMP/parallel_for_linear_codegen.cpp
    M clang/test/OpenMP/parallel_master_codegen.cpp
    M clang/test/OpenMP/parallel_master_taskloop_codegen.cpp
    M clang/test/OpenMP/parallel_master_taskloop_simd_codegen.cpp
    M clang/test/OpenMP/parallel_reduction_codegen.cpp
    M clang/test/OpenMP/sections_firstprivate_codegen.cpp
    M clang/test/OpenMP/sections_lastprivate_codegen.cpp
    M clang/test/OpenMP/sections_reduction_codegen.cpp
    M clang/test/OpenMP/single_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_codegen_global_capture.cpp
    M clang/test/OpenMP/target_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_parallel_debug_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_debug_codegen.cpp
    M clang/test/OpenMP/target_teams_codegen.cpp
    M clang/test/OpenMP/teams_firstprivate_codegen.cpp

  Log Message:
  -----------
  [CGCall] Annotate references with "align" attribute.

If we're going to assume references are dereferenceable, we should also
assume they're aligned: otherwise, we can't actually dereference them.

See also D80072.

Differential Revision: https://reviews.llvm.org/D80166




More information about the All-commits mailing list