--- /dev/null
+# REQUIRES: zlib
+
+## In this test, we check how llvm-objcopy handles compression/decompression
+## of debug sections included in a COMDAT group.
+
+# RUN: yaml2obj %p/Inputs/compress-debug-sections.yaml -o %t.o
+
+## Check compression of debug sections.
+# RUN: llvm-objcopy --compress-debug-sections %t.o %t-compressed.o
+# RUN: llvm-readobj -s -elf-section-groups %t-compressed.o | \
+# RUN: FileCheck %s --check-prefixes=CHECK,COMPRESS
+
+## Check zlib-gnu compression of debug sections.
+# RUN: llvm-objcopy --compress-debug-sections=zlib-gnu %t.o %t-compressed-gnu.o
+# RUN: llvm-readobj -s -elf-section-groups %t-compressed-gnu.o | \
+# RUN: FileCheck %s --check-prefixes=CHECK,COMPRESSZLIB
+
+## Check decompression of debug sections.
+# RUN: llvm-objcopy --decompress-debug-sections %t-compressed.o %t-decompressed.o
+# RUN: llvm-readobj -elf-section-groups %t-decompressed.o | \
+# RUN: FileCheck %s --check-prefixes=CHECK,DECOMPRESS
+
+## Check decompression of zlib-gnu debug sections.
+# RUN: llvm-objcopy --decompress-debug-sections %t-compressed-gnu.o %t-decompressed-gnu.o
+# RUN: llvm-readobj -elf-section-groups %t-decompressed-gnu.o | \
+# RUN: FileCheck %s --check-prefixes=CHECK,DECOMPRESS
+
+# COMPRESSZLIB: Name: .zdebug_in_group
+# COMPRESSZLIB-NEXT: Type: SHT_PROGBITS
+# COMPRESSZLIB-NEXT: Flags [
+# COMPRESSZLIB-NEXT: SHF_GROUP
+# COMPRESSZLIB-NEXT: ]
+
+# COMPRESS: Name: .debug_in_group
+# COMPRESS-NEXT: Type: SHT_PROGBITS
+# COMPRESS-NEXT: Flags [
+# COMPRESS-NEXT: SHF_COMPRESSED
+# COMPRESS-NEXT: SHF_GROUP
+# COMPRESS-NEXT: ]
+
+# CHECK: Group {
+# CHECK-NEXT: Name: .group
+# CHECK-NEXT: Index:
+# CHECK-NEXT: Link:
+# CHECK-NEXT: Info:
+# CHECK-NEXT: Type: COMDAT
+# CHECK-NEXT: Signature: groupname
+# CHECK-NEXT: Section(s) in group [
+# CHECK-NEXT: .text.in.group
+# COMPRESSZLIB-NEXT: .zdebug_in_group
+# COMPRESS-NEXT: .debug_in_group
+# DECOMPRESS-NEXT: .debug_in_group
+# CHECK-NEXT: ]